棋盘问题--POJ 1321
2010-08-20 21:43
330 查看
1、题目类型:模拟、DFS。
2、解题思路:类似八皇后问题的DFS。
3、注意事项:注意DFS内部剪枝,以提高运行时间效率。
4、实现方法:
2、解题思路:类似八皇后问题的DFS。
3、注意事项:注意DFS内部剪枝,以提高运行时间效率。
4、实现方法:
#include<iostream> using namespace std; int n,k,num,ans; bool map[9][9],col[9]; void DFS(int k) { int i; if(k==0) { ans++; return; } if(num>=n) return; if(k>(n-num)) return; num++; for(i=1;i<=n;i++) { if(!map[num][i]) continue; if(col[i]) continue; col[i]=1; DFS(k-1); col[i]=0; } DFS(k); num--; return; } int main() { char ch; int i; while(cin>>n>>k) { if(n==-1&&k==-1) break; memset(map,0,sizeof(map)); memset(col,0,sizeof(col)); ans=0; for(i=1;i<=n;i++) for(int j=1;j<=n;j++) { cin>>ch; if(ch=='#') map[i][j]=1; } for(i=1;i<=n;i++) { num=1; if(!map[num][i]) continue; if(col[i]) continue; col[i]=1; DFS(k-1); col[i]=0; } DFS(k); cout<<ans<<endl; } return 0; }
相关文章推荐
- POJ_1321 棋盘问题解题报告
- [kuangbin带你飞]专题一 简单搜索 A - 棋盘问题(POJ 1321)
- poj 1321 棋盘问题
- POJ 1321(A)棋盘问题
- poj_1321_棋盘问题(DFS)
- POJ 1321 棋盘问题
- POJ 1321 棋盘问题
- POJ1321 棋盘问题(DFS)
- Poj 1321 棋盘问题 【回溯、类N皇后】
- POJ 1321 棋盘问题(DFS)
- [dfs] poj1321棋盘问题
- POJ 1321 棋盘问题
- poj1321棋盘问题
- poj1321 棋盘问题【dfs】
- POJ 1321 棋盘问题(寒假刷题之路)
- POJ1321 棋盘问题(DFS||状压DP)
- Poj 1321 棋盘问题
- poj 1321棋盘问题(简单搜索)
- Poj 1321 棋盘问题 ( DFS
- POJ 1321 棋盘问题 (dfs)