八皇后问题(参考算法竞赛入门经典)
2014-03-26 23:14
162 查看
#include<cstdio> #include<cstring> using namespace std; int vis[3][15],a[8],Map[8][8],Case=0; void Search(int cur) { int i,j; if(cur==8) { memset(Map,0,sizeof(Map)); for(i=0; i<8; i++) Map[a[i]][i]=1; printf("No. %d\n",++Case); for(i=0; i<8; i++) { for(j=0; j<8; j++) printf("%d ",Map[i][j]); printf("\n"); } } else { for(i=0; i<8; i++) { if(!vis[0][i]&&!vis[1][cur-i+8]&&!vis[2][cur+i])//判断对角线及列 { vis[0][i]=1; vis[1][cur-i+8]=1; vis[2][cur+i]=1; a[cur]=i; Search(cur+1); //改回出口 vis[0][i]=0; vis[1][cur-i+8]=0; vis[2][cur+i]=0; } } } } int main() { memset(vis,0,sizeof(vis)); Search(0); return 0; }
相关文章推荐
- (枚举)算法竞赛入门经典(7.1.1)除法
- 算法竞赛入门经典习题3-2
- 算法竞赛入门经典 例题 3-4 回文串
- 算法竞赛入门经典 6.1.1 卡片游戏
- 算法之路二:刘汝佳算法竞赛入门经典:链表 悲剧文本UVa11988
- 【算法竞赛入门经典】7.3子集生成【增量构造法】【位向量法】【二进制法】
- 【算法竞赛入门经典】7.6 迭代加深搜索与IDA* 例题7-10 UVa11211
- 算法竞赛入门经典第二章习题解答
- 算法竞赛入门经典:习题3-8 手机键盘(keyboard)
- 算法竞赛入门经典课后习题答案:第一章(C++解法)
- 【算法竞赛入门经典】【第三章】课后习题(第一部分)
- 算法竞赛入门经典: 第四章 函数与递归 4.5递归
- 算法竞赛入门经典 笔记(1)
- 刘汝佳 算法竞赛入门经典 第5章 C++与STL入门
- 算法之路二:刘汝佳算法竞赛入门经典 3.10环状序列 UVa1584
- 算法之路二:刘汝佳算法竞赛入门经典 救济金发放 UVa133
- 算法竞赛入门经典第二章练习
- (算法竞赛入门经典 优先队列)LA 3135(前K条指令)
- 算法竞赛入门经典 习题3-7 n进制转十进制
- (枚举)算法竞赛入门经典(7.1.1)除法