POJ_1321——棋盘问题,回溯+剪枝
Description
Input
Output
Sample Input
2 1
#.
.#
4 4
...#
..#.
.#..
#...
-1 -1
Sample Output
2
1
#include <cstdio>
#include <cstring>
int n,k,ans,mark[];
char map[][];
void DFS(int k,int r)
{
if(k==)
{
ans++;
return;
}
for(int i=r;i<n-k+;i++)//剩余棋子为k个,每行只能有一个
{ //所以只要枚举到n-k+1行就可以了
for(int j=;j<n;j++)
{
if(mark[j]== && map[i][j]=='#')
{
mark[j] = ;
DFS(k-,i+);
mark[j] = ;
}
}
}
}
int main()
{
while(~scanf("%d%d",&n,&k) && n+k>)
{
for(int i=;i<n;i++)
{
scanf("%s",map[i]);
}
memset(mark,,sizeof(mark));
ans=;
DFS(k,);
printf("%d\n",ans);
}
return ;
}
POJ_1321——棋盘问题,回溯+剪枝的更多相关文章
- HDU 2553 N皇后问题(回溯 + 剪枝)
本文链接:http://i.cnblogs.com/EditPosts.aspx?postid=5398797 题意: 在N*N(N <= 10)的方格棋盘放置了N个皇后,使得它们不相互攻击(即 ...
- 回溯剪枝,dfs,bfs
dfs: 给定一个整数n,将数字1~n排成一排,将会有很多种排列方法. 现在,请你按照字典序将所有的排列方法输出. 输入格式 共一行,包含一个整数n. 输出格式 按字典序输出所有排列方案,每个方案占一 ...
- HDU 5113 Black And White 回溯+剪枝
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5113 Black And White Time Limit: 2000/2000 MS (Java/ ...
- HDU1010 Tempter of the Bone(回溯 + 剪枝)
本文链接:http://i.cnblogs.com/EditPosts.aspx?postid=5398734 题意: 输入一个 N * M的迷宫,这个迷宫里'S'代表小狗的位置,'X'代表陷阱,‘D ...
- HDU1016 Prime Ring Problem (回溯 + 剪枝)
本文链接:http://www.cnblogs.com/Ash-ly/p/5398684.html 题意: 给你一个数字N(N <= 20),要求你把这N个数组成一个环,环内的数字不能重复,左右 ...
- [算法专题] 深度优先搜索&回溯剪枝
1. Palindrome Partitioning https://leetcode.com/problems/palindrome-partitioning/ Given a string s, ...
- TZOJ 1221 Tempter of the Bone(回溯+剪枝)
描述 The doggie found a bone in an ancient maze, which fascinated him a lot. However, when he picked i ...
- Leetcode题目39.组合总和(回溯+剪枝-中等)
题目描述: 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合. candidates 中的数字可以无 ...
- UVa 208 - Firetruck 回溯+剪枝 数据
题意:构造出一张图,给出一个点,字典序输出所有从1到该点的路径. 裸搜会超时的题目,其实题目的数据特地设计得让图稠密但起点和终点却不相连,所以直接搜索过去会超时. 只要判断下起点和终点能不能相连就行了 ...
随机推荐
- hash表的创建
功能:创建一个hash table.假设有处理冲突,则採用再散列法放置该元素 代码參考<零基础学数据结构> 代码例如以下: root@ubuntu:/mnt/shared/appbox/h ...
- Debian编译内核
转自 yuzibo博客 http://yuzibo.github.io/DebianBuildKernel.html 最终成功一次了 之前又一次编译了好多次.可惜没有一次成功的,说实话.借助Debia ...
- session过期后自动跳转到登陆页
项目需要做一个自动登出的功能,查询了网上的资料,一开始准备用session监听做,按照下面方式配置监听器 1.在项目的web.xml文件中添加如下代码: <!--添加Session监听器--&g ...
- 2015 UESTC Winter Training #7【2010-2011 Petrozavodsk Winter Training Camp, Saratov State U Contest】
2015 UESTC Winter Training #7 2010-2011 Petrozavodsk Winter Training Camp, Saratov State U Contest 据 ...
- bootsrtap (-)
1.text-muted:提示,使用浅灰色(#999).text-primary:主要,使用蓝色(#428bca).text-success:成功,使用浅绿色(#3c763d).text-info:通 ...
- iOS 改变UITextField中光标颜色
第一种: [[UITextField appearance] setTintColor:[UIColor blackColor]]; 这个方法会影响整个app的所有UITextFiled... 第二种 ...
- jQuery旋转插件
jQuery旋转插件,支持Internet Explorer 6.0 + .Firefox 2.0.Safari 3.Opera 9.Google Chrome,高级浏览器下使用Transform,低 ...
- tkinter之文件对话框
from tkinter import * from tkinter.filedialog import * filetype = [('Python Files', '*.py *.pyw'), ( ...
- 如何退出Activity?如何安全退出已调用多个Activity的Application?
如何退出Activity?如何安全退出已调用多个Activity的Application? 退出Activity直接调用finish()方法 //用户点击back键就是退出一个Activity 退出 ...
- java+tomcat 在 linux下的部署
一.配置JAVA运行环境 1.安装jdk. 从sun公司网站www.sun.com下载linux版本的jdk, 建议使用jdk1.6版本.地址http://java.sun.com/javase/do ...