国产探花免费观看_亚洲丰满少妇自慰呻吟_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;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 瑞丽市| 深泽县| 东港市| 墨脱县| 呼图壁县| 扶风县| 卢龙县| 涡阳县| 吐鲁番市| 枣庄市| 安岳县| 晋城| 远安县| 时尚| 琼中| 北辰区| 瑞安市| 西盟| 牡丹江市| 通化县| 汝阳县| 溧水县| 定结县| 长丰县| 巴塘县| 双辽市| 广灵县| 双鸭山市| 金门县| 屯昌县| 揭阳市| 忻城县| 营山县| 若尔盖县| 房山区| 蓝田县| 景东| 玉屏| 渭南市| 浏阳市| 延寿县|