HDU-2553-N皇后问题
2014-04-13 19:24
323 查看
题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=2553
此题是深搜入门题,套用模板就可以,注意打表,避免TLE。
代码如下:
http://acm.hdu.edu.cn/showproblem.php?pid=2553
此题是深搜入门题,套用模板就可以,注意打表,避免TLE。
代码如下:
#include<iostream> #include<cstring> #include<math.h> #include<cstdio> #include<cstdlib> using namespace std; int vis[11][11]; int a[11]; int sum,n; bool check(int x) //检查此位置能否放置 { int i; int flag=1; for(i=0;i<x;i++) { if(a[i]==a[x]||abs(i-x)==abs(a[i]-a[x])) { flag=0; break; } } if(flag)return true; else return false; } void dfs(int cur) { int i; if(cur==n) { sum++; return ; } for(i=0;i<n;i++) { a[cur]=i; if(check(cur)&&!vis[cur][i]) { vis[cur][i]=1; dfs(cur+1); vis[cur][i]=0; } } return ; } int main() { int h[11]; for(n=0;n<11;n++)//若不打表,此题会超时 { sum=0; memset(vis,0,sizeof(vis)); dfs(0); h =sum; } while(scanf("%d",&n),n) { printf("%d\n",h ); } return 0; }
相关文章推荐
- [HDU] 2553 N皇后问题-简单深搜
- HDU - 2553:N皇后问题(经典DFS)
- HDU 2553 N皇后问题
- N皇后问题(HDU 2553)
- [ACM] hdu 2553 N皇后问题
- HDU:2553 N皇后问题(深搜)
- HDU 2553-N皇后问题
- hdu 2553 N皇后问题(dfs)
- HDU 2553 N皇后问题(2种详细题解)
- HDU 2553 n皇后问题(回溯)
- day3 HDU 2553 N皇后问题
- Hdu 2553 N皇后问题
- N皇后问题||HDU2553
- HDU 2553 N皇后问题
- [ACM] hdu 2553 N皇后问题
- HDU - 2553 N皇后问题
- HDU 2553 N皇后问题
- hdu 2553 N皇后问题(回溯)
- HDU 2553 N皇后问题 (回溯DFS)
- HDU 2553 N皇后问题