poj1321-棋盘问题(深搜)
来源:互联网 发布:数组长度可以是变量吗 编辑:程序博客网 时间:2024/06/14 05:18
思路:用深搜, 注意有两个终止条件。一个是棋盘的范围, 一个是棋子的数量。但是注意棋子的判断要在棋盘的前面。因为可能这一次的搜索超出了棋盘, 但是这一次也刚好是棋子的数量。
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int maxn=10;const int INF=0x3f3f3f3f; int row[maxn], cnt, num;int n, k;char mp[maxn][maxn];void dfs(int col){if(num==k){cnt++;return;}if(col>n)return;for(int i=1; i<=n; i++){if(!row[i] && mp[i][col]=='#'){row[i]=1; num++;dfs(col+1);row[i]=0;num--;}}dfs(col+1);return;}int main(){while(cin>>n>>k && (n!=-1 && k!=-1)){cnt=num=0;memset(row, 0, sizeof(row));for(int i=1; i<=n; i++){for(int j=1; j<=n; j++){cin>>mp[i][j];}}dfs(1);cout<<cnt<<endl;}return 0;}
阅读全文
0 0
- poj1321棋盘问题(深搜)
- poj1321-棋盘问题(深搜)
- 棋盘问题(POJ1321)
- poj1321 棋盘问题(深搜dfs)
- POJ1321 棋盘问题(DFS)
- poj1321--棋盘问题(DFS)
- poj1321 棋盘问题(DFS)
- POJ1321 棋盘问题(DFS)
- POJ1321 棋盘问题(dfs)
- POJ1321 棋盘问题(dfs)
- poj1321棋盘问题(DFS)
- poj1321棋盘问题(dfs)
- poj1321棋盘问题(dfs)
- 棋盘问题(poj1321)dfs
- poj1321 棋盘问题 (dfs)
- POJ1321棋盘问题(DFS)
- POJ1321 棋盘问题(DFS||状压DP)
- poj1321 棋盘问题(状态压缩)
- 超强、超详细Redis数据库入门教程
- 算法相关文章索引(5)
- Java包(package)的命名规范
- 后缀自动机·基本概念
- 算法的时间复杂度和空间复杂度-总结
- poj1321-棋盘问题(深搜)
- 一个在vs2017中开发wcf的步骤
- SSH框架分模块开发
- 用批处理文件自动备份文件及文件夹,并自动删除n天前的文件_DOS/BAT
- VRRP协议介绍
- 一个在线音乐软件的故事(三、音乐从哪里来?)
- mybaits接口式编程
- 1690: [Usaco2007 Dec]奶牛的旅行
- Flask实战2问答平台-发布问答功能完成