国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

八皇后問題

2019-11-11 05:00:11
字體:
來源:轉載
供稿:網友

#include <stdio.h>#include <stdlib.h>#define max 8int queen[max], sum=0; /* max為棋盤最大坐標 */void show(){ /* 輸出所有皇后的坐標 */    for(int i = 0; i < max; i++){        PRintf("(%d,%d) ", i, queen[i]);    }    printf("/n");    sum++;}int check(int n){ /* 檢查當前列能否放置皇后 */    for(int i = 0; i < n; i++){ /* 檢查橫排和對角線上是否可以放置皇后 */        if(queen[i] == queen[n] || abs(queen[i] - queen[n]) == (n - i)){            return 1;        }    }    return 0;}void put(int n){ /* 回溯嘗試皇后位置,n為橫坐標 */    for(int i = 0; i < max; i++){        queen[n] = i; /* 將皇后擺到當前循環到的位置 */        if(!check(n)){            if(n == max - 1){                show(); /* 如果全部擺好,則輸出所有皇后的坐標 */            } else {                put(n + 1); /* 否則繼續擺放下一個皇后 */            }        }    }}int main(){    put(0); /* 從橫坐標為0開始依次嘗試 */    printf("%d", sum);    return 0;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 泰安市| 公安县| 八宿县| 阳曲县| 柘城县| 浦东新区| 曲阳县| 汉中市| 宣武区| 汤阴县| 碌曲县| 鲜城| 大厂| 芷江| 麻阳| 上饶市| 惠安县| 湖州市| 额济纳旗| 新绛县| 旬邑县| 靖安县| 东丽区| 宝丰县| 苗栗市| 垦利县| 横山县| 华坪县| 启东市| 江北区| 彭阳县| 曲沃县| 西丰县| 报价| 精河县| 石渠县| 新晃| 商水县| 浦北县| 恭城| 东阳市|