Algorithm Gossip :八皇后问题
来源:互联网 发布:unity3d ugui虚拟摇杆 编辑:程序博客网 时间:2024/05/07 23:05
/*八皇后问题。*/#include <stdio.h>#include <stdlib.h>#define N 8int column[N+1];//同栏是否有皇后,1表示有int rup[2*N+1];//右上至左下是否有皇后int lup[2*N+1];//左上至右下是否有皇后int queen[N+1] = {0};int num;//解答编号void backtrack(int);//递回求解int main(void){int i;num = 0;for( i = 1;i <= N;i++ ){column[i] = 1;}for( i = 1;i <= 2*N;i++ ){rup[i] = lup[i] = 1;}backtrack(1);return 0;}void showAnswer(){int x,y;printf("\nanswer %d\n",++num);for( y = 1;y <= N;y++ ){for( x = 1;x <= N;x++ ){if(queen[y] == x){printf("Q");}else{printf(".");}}printf("\n");}}void backtrack(int i){int j;if( i > N ){showAnswer();}else{for( j = 1;j <= N;j++ ){if(column[j] == 1 && rup[i+j] == 1 &&lup[i-j+N] == 1){queen[i] = j;column[j] = rup[i+j] = lup[i-j+N] = 0;backtrack(i+1);column[j] = rup[i+j] = lup[i-j+N] = 1;}}}}
0 0
- Algorithm Gossip :八皇后问题
- Algorithm Gossip (8) 八皇后问题
- Algorithm Gossip:八枚银币
- Algorithm Gossip:三色旗问题
- Algorithm Gossip (9) 八枚银币
- Algorithm Gossip:背包问题(Knapsack Problem)
- Algorithm Gossip: 背包问题(Knapsack Problem)
- Algorithm Gossip: 约瑟夫问题(Jossphus Problem)
- Algorithm Gossip: 背包问题(Knapsack Problem)
- Algorithm Gossip: 约瑟夫问题(Josephus Problem)
- 八皇后 n皇后 问题
- 八皇后N皇后问题
- 递归算法计算八皇后问题(Eight Queen Problem with Recursive Algorithm)
- 八皇后问题
- 八皇后问题
- 八皇后问题
- 八皇后问题(2)
- 八皇后问题(3)
- POJ 3094 Quicksum
- JsonHelper
- Unity3D【常用核心类】
- JAVA复习笔记--------网络编程
- 文件目录权限总结
- Algorithm Gossip :八皇后问题
- latex 小技巧
- mysql日志
- 额头长痘痘的调理方法?
- LeetCode-Spiral Matrix
- godot制作简单2D游戏Pong
- 使用MATLAB进行一次和二次规划问题求解
- idea快捷键
- 我想知道痘痘怎样快速消除?