hdu2553n皇后问题
2016-10-03 20:55
281 查看
一切尽在代码之中!看懂代码不难的
#include<cstdio> #include<cstring> #include<algorithm> #include<cmath> using namespace std; int n , line[10] , ans , vis[20] , map[20] , p_ans[20]; void dfs(int x) { if(x == n + 1){ ans++; return; } for(int i = 1 ; i <= n ; i++){ if(!vis[i]){//hang int flag = 1; map[x] = i;//把x列安排在i行里 for(int j = 1 ; j <= x - 1 ; j++){ if(abs(map[x] - map[j]) == abs(x - j)){//一次和前面的进行比较 flag = 0; break; } } if(flag){ vis[i] = 1; dfs(x + 1); vis[i] = 0; } } } } int main() { for(int i = 1 ; i <= 10 ; i++){ ans = 0; n = i; memset(map , 0 , sizeof(map)); memset(vis , 0 , sizeof(vis)); dfs(1);//lie p_ans[i] = ans; } while(scanf("%d",&n),n){ printf("%d\n",p_ans ); } return 0; }
相关文章推荐
- hdu2553 N皇后问题
- Hdu2553 N皇后问题 【简单dfs】
- HDU2553N皇后问题(BFS)
- HDU2553 N皇后问题(回溯)
- HDU2553 N皇后问题
- HDU2553 N皇后问题(回溯法)
- hdu2553 N皇后问题【二进制状态压缩基础】
- 深搜--n皇后问题 hdu2553
- HDU2553 N皇后问题【回溯法】
- hdu2553 N皇后问题--DFS
- hdu2553N皇后问题
- N皇后问题hdu2553(dfs)
- HDU2553 N皇后问题
- hdu2553N皇后问题
- HDU2553 N皇后问题
- HDU2553:N皇后问题
- hdu2553 n皇后问题
- HDU2553:N皇后问题【递归】
- HDU2553 N皇后问题(回溯+打表)