POJ 1321 棋盘问题
来源:互联网 发布:零基础学java第3版pdf 编辑:程序博客网 时间:2024/05/16 20:30
看到DFS题目,要是没有想法真的好难,要是思路清晰也真的很容易
此题我一直迷糊当棋子数小于行数子怎么继续DFS......当参考了别人的解题报告才明白啊.....此题要不要预处理感觉也没有大碍吧......只要逐行DFS下去就可以了....
直接贴代码吧.....DFS and BFS感觉真的好抽象.....慢慢来理解吧
#include<cstdio>#include<cstring>const int N=10;char tmp[N];int vis[N];int n, k;int tot=0;int map[N][N];void dfs(int cur, int num){if(num == k) {tot++;return;}if(n+num-cur < k)//剪枝 剩余行数 小于 剩余棋子return;if(cur==n)return;for(int i=0; i<n; i++){if(map[cur][i] && !vis[i]){vis[i]=1;dfs(cur+1,num+1);vis[i]=0;}}dfs(cur+1, num);}int main(){while(scanf("%d%d",&n, &k) == 2 && n != -1 && k != -1){tot=0;memset(vis, 0, sizeof(vis));memset(map, 0, sizeof(map));for(int i=0; i< n; i++){scanf("%s",tmp);for(int j=0; j<n; j++)if(tmp[j] == '#')map[i][j]=1;}dfs(0,0);printf("%d\n",tot);}return 0;}
0 0
- POJ 1321 棋盘问题
- poj 1321 棋盘问题
- poj 1321 棋盘问题
- Poj 1321 棋盘问题
- POJ 1321 棋盘问题
- POJ 1321 棋盘问题
- POJ-1321-棋盘问题
- poj 1321棋盘问题
- POJ 1321 棋盘问题
- poj 1321 棋盘问题
- POJ 1321 棋盘问题
- poj 1321 棋盘问题
- poj 1321 棋盘问题
- poj 1321 棋盘问题
- poj 1321 棋盘问题
- POJ 1321 - 棋盘问题
- poj 1321棋盘问题
- POJ 1321 棋盘问题
- ${pageContext.request.contextPath} JSP取得绝对路径
- 我的面试准备纲要
- 泛型加强
- Android开发之ListView(1)
- OpenVPN解密(二)
- POJ 1321 棋盘问题
- leetcode-3 sum closest
- IOS真机测试教程
- INSTALL_FAILED_INSUFFICIENT_STORAGE 错误
- jsp中jstl fn为啥不能用
- Python-面向对象(三 元编程)
- 用于字符串拼接,字符串重合度以及偏移量算法
- 让CSS的查找匹配原理变高效
- Alpha版本