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

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

n皇后問題

2019-11-08 02:23:43
字體:
來源:轉載
供稿:網友
八皇后位置,利用回溯法解決

直接利用回溯法:

#include <stdio.h>int n, tot = 0;int C[1000] = {0};void search(int cur){    if(cur == n){               //邊界        tot++;    } else {        for(int i = 0; i < n; i++){            int ok = 1;            C[cur] = i;              //嘗試把第cur行的皇后放在第i位            for(int j = 0; j < cur; j++){   //檢驗是否有沖突                if(C[cur] == C[j] || cur - C[cur] == j - C[j] || cur + C[cur] == j + C[j]){                    ok = 0;                    break;                }            }            if(ok) search(cur + 1);   //放在這個位置可以        }    }}int main(){    scanf("%d", &n);    search(0);    PRintf("%d/n", tot);    return 0;}

將每一種結果輸出:

 #include <stdio.h>int n, tot = 0;int C[1000];void show(int cur){    if(cur == n){        tot++;        for(int i = 0; i < n; i++){            for(int j = 0; j < n; j++){                if(j == C[i]){                    printf("h ");                } else {                    printf("+ ");                }            }            printf("/n");        }        printf("/n/n");    } else {        for(int i = 0; i < n; i++){            int ok = 1;            C[cur] = i;            for(int j = 0; j < cur; j++){                if(C[cur] == C[j] || cur - C[cur] == j - C[j] || cur + C[cur] == j + C[j]){                    ok = 0;                    break;                }            }            if(ok) show(cur + 1);        }    }}int main(){    scanf("%d", &n);    show(0);    printf("%d", tot);    return 0;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 托克逊县| 新野县| 镇江市| 萝北县| 蛟河市| 蓬溪县| 农安县| 泗洪县| 渑池县| 蓬溪县| 平凉市| 清河县| 杭锦后旗| 遂溪县| 刚察县| 大田县| 乐山市| 七台河市| 麦盖提县| 绥宁县| 广平县| 康马县| 醴陵市| 花莲县| 安西县| 乌拉特中旗| 兴安盟| 柳河县| 科尔| 新河县| 资兴市| 胶州市| 沙洋县| 太湖县| 大庆市| 简阳市| 松滋市| 万载县| 辉县市| 庆云县| 江华|