
DFS
文章平均质量分 70
shengweisong
只有行动,才能解除所有的不安
展开
-
nyoj58最少步数 【DFS】
最近对回溯和深搜仔细的研究了以下,原创 2014-05-29 10:05:57 · 1026 阅读 · 1 评论 -
poj 1088 滑雪 【记忆化搜索】+【DFS】
策略:如题题目链接:http://poj.org/problem?id=1088代码:#include#includeint map[105][105], dp[105][105], n, m;const int dir[4][2] = {0, 1, 1, 0, 0, -1, -1, 0}; //四个方向int limit(int x, int y) //判断是不是越界了{原创 2014-08-03 11:10:04 · 968 阅读 · 0 评论 -
hdoj 1864 最大报销额 【01背包】||【dfs】
最大报销额Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 17014 Accepted Submission(s): 4959Problem Description现有一笔经费可以报销一定额度的发票。允原创 2014-11-25 15:31:35 · 1032 阅读 · 0 评论 -
nyoj 491 幸运三角形 【DFS】+【打表】
幸运三角形时间限制:1000 ms | 内存限制:65535 KB难度:3描述 话说有这么一个图形,只有两种符号组成(‘+’或者‘-’),图形的最上层有n个符号,往下个数依次减一,形成倒置的金字塔形状,除第一层外(第一层为所有可能情况),每层形状都由上层决定,相邻的符号相同,则下层的符号为‘+’,反之,为‘-’;如下图所示(n = 3 时的原创 2014-11-27 20:19:06 · 1102 阅读 · 0 评论 -
nyoj 27 水池数目【递归】
找到一个水池找它四周也是1原创 2014-06-20 18:40:52 · 656 阅读 · 0 评论 -
poj 3050 Hopscotch 【DFS】
HopscotchTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 2156 Accepted: 1548DescriptionThe cows play the child's game of hopscotch in a non-traditiona原创 2014-12-06 13:39:47 · 1221 阅读 · 0 评论 -
hdoj 1015 Safecracker 【dfs】
SafecrackerTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 8947 Accepted Submission(s): 4529Problem Description=== Op tech br原创 2014-12-07 20:15:12 · 936 阅读 · 0 评论 -
NYoj 366 D的小L 【DFS】
D的小L时间限制:4000 ms | 内存限制:65535 KB难度:2描述 一天TC的匡匡找ACM的小L玩三国杀,但是这会小L忙着哩,不想和匡匡玩但又怕匡匡生气,这时小L给匡匡出了个题目想难倒匡匡(小L很D吧),有一个数n(0,,,聪明的你能帮匡匡解围吗?输入第一行输入一个数N(0输出按特定顺序输出所有组合。特定顺序:每一个组合中原创 2015-03-09 23:55:37 · 926 阅读 · 0 评论 -
Nyoj 43 24 Point game 【DFS】
24 Point game时间限制:3000 ms | 内存限制:65535 KB难度:5描述There is a game which is called 24 Point game.In this game , you will be given some numbers. Your task is to find an expressi原创 2015-03-18 19:33:39 · 882 阅读 · 0 评论 -
Poj 1426 Find The Multiple 【DFS】
Find The MultipleTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 19815 Accepted: 8048 Special Judge DescriptionGiven a positive integer n, write a program to find out a nonzero multiple原创 2015-04-12 19:22:34 · 735 阅读 · 0 评论 -
Hdoj 1427 速算24点 【DFS】
速算24点Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 3574 Accepted Submission(s): 869Problem Description速算24点相信绝大多数人都玩过。就是随机给原创 2015-04-25 00:03:28 · 2218 阅读 · 0 评论 -
poj 1011 Sticks 【DFS】+【剪枝】
题意:有未知根(长度一样)木棒(小于等于n),被猪脚任意的截成n段,猪脚(脑抽了)想知道被截之前的最短长度(我推测猪脚得了健忘症)。这道题光理解题意就花了好久,大意就是任意根被截后的木棒拼到一起,能不能组成s(《=n)根的相同的木棒,例:数据 9 5 1 2 5 1 2 5 1 2可以组成最短为6 的(5+1, 2+2+2)3根木棒。策略:深搜。不过要是传统的深搜的话,TL原创 2014-08-18 21:50:23 · 900 阅读 · 0 评论 -
hdoj 2553 N皇后问题 【DFS】
题意:。。。典型的深搜,就是处理对角线的时候有些意外。代码(注释掉的就是深搜,因为我不打表的话 TL):#includeint c[11], n, ans;int res[10] = {1, 0, 0, 2, 10, 4, 40, 92, 352, 724};/*void dfs(int cur){ if(cur == n) { ++ans; return ; }原创 2014-08-17 15:07:08 · 894 阅读 · 0 评论 -
poj 1321 棋盘问题 【DFS】
题意:。。。策略:深搜.仔细分析我们发现,我们只需要对列进行标记,对于行我们考虑放棋子还是不放就行了。代码:#include#includechar s[10][10];int n, m;int vis[10];int ans;void dfs(int cur, int step){ if(step == m){ ans ++; return; } if原创 2014-08-15 09:19:20 · 751 阅读 · 0 评论 -
nyoj 1058 部分和问题 【DFS】
这道题同上一道题一起比较一下 大概就可以理解DFS中‘return;’原创 2014-06-16 21:58:47 · 849 阅读 · 0 评论 -
nyoj 19 擅长排列的小明 【DFS】
一直在研究dfs中‘return;’什么作用!!最近做了俩道题都是和原创 2014-06-16 21:53:11 · 710 阅读 · 0 评论 -
nyoj 325 zb的生日 【DP】||【DFS】
两种方法:第一种:将总数一半当做背包,用总数-2*最多能装的数目就是所求;第二种:深搜;zb的生日时间限制:3000 ms | 内存限制:65535 KB难度:2描述今天是阴历七月初五,acm队员zb的生日。zb正在和C小加、never在武汉集训。他想给这两位兄弟买点什么庆祝生日,经过调查,zb发现C小加和never都很喜欢吃西瓜,而且一原创 2014-07-27 23:29:20 · 924 阅读 · 0 评论 -
nyoj 90 整数划分 【深搜】
用深搜(万能啊!!!) 网上还有另一种方法,原创 2014-07-09 21:14:51 · 745 阅读 · 0 评论 -
hdoj 1016 Prime Ring Problem 【DFS】
策略如题链接 http://acm.hdu.edu.cn/showproblem.php?pid=1016代码:#include#includeint prime[25] = {1, 1}, n, vis[25]; //vis作用:标记是否用过int a[25];void f() //找出来前20的素数 判定为0{ for(int i = 2; i <= 24; i ++原创 2014-07-30 12:00:44 · 817 阅读 · 0 评论 -
hdoj 1045 Fire Net 【DFS】
题意:如果两个点要放在同一行或者同一列,那么两个点中间要有一个墙,否则的话只能放一个点,最后问你最多能放几个点。看了一个星期。。这道题的解法我还是第一次见,就是逐个逐个的来放置每个点,然后每经过一个点都判断一次,详情看代码原创 2014-08-21 23:52:21 · 801 阅读 · 0 评论 -
hdoj 1010 Tempter of the Bone 【DFS】+【奇偶剪枝】
题意:从S出发到D停止,并且要在指定的时间t走到(不早不晚)。注意,每个‘.’只能走一次。分析:DFS,但是用普通的dfs,TL, 所以要剪枝。我们可以想到,如果可以早到D点,但是D点周围有其他可以踩的点,并且可以观察到,从一个点(不是D点)到D点的距离(abs(x-dx)+abs(y-dy))是奇数的话,就要走奇数步,偶数的就走偶数步,()原创 2014-08-22 22:25:30 · 864 阅读 · 0 评论 -
hdoj 1518 Square 【dfs】
题意:给出n个(不同长度的)棍子,问能不能将他们构成一个正方形。策略:深搜。原创 2014-08-27 07:59:55 · 994 阅读 · 0 评论 -
hdoj 1455 Sticks 【dfs】
题意:找最短的木棍能够组成的长度,hdoj 1518 的加强版代码:#include #include #include using std::sort;#define M 70int s[M], vis[M];int n, ans;int cmp(int a, int b){ return a > b;}int dfs(int cou, int cur,原创 2014-08-27 08:20:16 · 902 阅读 · 0 评论 -
poj 3009 Curling 2.0 【DFS】
题意:从2出发,要到达3, 0可以通过,碰到1要停止,并且1处要变成0, 并且从起点开始沿着一个方向要一直前进,直至碰到1(或者3)处才能停止,(就是反射来反射去知道反射经过3).如果反射10次还不能到达3,就输出-1.策略:深搜。易错点,方向不容易掌握,并且,出题人把n, m顺序反了。代码:#include#includeint map[25][25];int ans, n原创 2014-08-14 23:16:39 · 790 阅读 · 0 评论 -
Hdoj 1428 A Walk Through the Forest 【spfa】+【记忆化搜索】
A Walk Through the ForestTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 6397 Accepted Submission(s): 2348Problem Description Jimmy experie原创 2015-05-02 23:37:10 · 1154 阅读 · 0 评论