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

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

八皇后問題

2019-11-11 04:20:23
字體:
來源:轉載
供稿:網友

#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;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 突泉县| 桃源县| 屯昌县| 通榆县| 扬州市| 阜城县| 富平县| 赞皇县| 西峡县| 鹤山市| 兴义市| 大兴区| 临朐县| 山东省| 明光市| 上犹县| 衢州市| 调兵山市| 淮阳县| 芜湖县| 沽源县| 教育| 锦屏县| 肇源县| 都江堰市| 灌南县| 东方市| 炉霍县| 麻阳| 法库县| 株洲县| 绵竹市| 石泉县| 芒康县| 乐都县| 五常市| 缙云县| 咸宁市| 汝阳县| 江门市| 灵璧县|