随笔分类 -  DFS

摘要:题意 这道题题意是很有趣的,我记得在勇者斗恶龙六里面有一点,在一个有冰的洞穴里面,人物的移动方式就是这道题所说的方式,不过这道题有一个特殊之处,就是人物碰到墙的同时会在墙面前停下开,同时,面前的墙会消失掉,这就需要我们在遍历时要做好回溯 这道题是要求最少步数,所以一开始我是想用bfs,但是题目有个条 阅读全文
posted @ 2018-03-29 20:46 柳暗花明_liu 阅读(341) 评论(0) 推荐(0)
摘要:题目描述 额,这个标题有点不友好,主要是被恶心了两天了,本来很快就写出来,结果超内存,怎么优化都不行,刚才才发现!原因是找最短路时用bfs,没有加visit数组...导致他虽然能出结果,但是搜索了无数次。。。 这道题主要在于方向处理,真正思考过并不难,定义move数组时,按移动方向顺时针定义,然后, 阅读全文
posted @ 2018-03-29 15:40 柳暗花明_liu 阅读(149) 评论(0) 推荐(0)
摘要:地址 上一次做八数码的时候,自己把不输出路线的版本写了出来,对于记录路线的,也没去想怎么写,今天做到一个记录路线的dfs,正好写出来 这个代码中记录路线的办法非常清晰易懂,看了就会: 阅读全文
posted @ 2018-03-28 16:11 柳暗花明_liu 阅读(139) 评论(0) 推荐(0)
摘要:题目描述 本地的重要启示: 在接下来对每一个子问题进行搜索前可以先获得该子问题的搜索目标的极限,通过该极限可以判断对该子问题搜索出的解能否比当前最优解更优;或对该子问题搜索出的搜索目标能否满足要求,如果不能,就没必要了搜下去了,直接跳过对该子问题的搜索。该剪枝可以有效减小对某一子问题的搜索深度。 这 阅读全文
posted @ 2018-03-10 17:25 柳暗花明_liu 阅读(507) 评论(0) 推荐(0)
摘要:题干描述 就是一个数独问题 这道题说是简单题,但是我觉得这个“简单”是在对数据结构,递归非常熟悉的基础上,对于我这种新手其实并不简单,也有很多坑等我我去踩 这道题说是剪枝,但是我觉得主要妙点还是好在gw老师的设置的数据结构太好了。见代码。 当要在一个空格子(0)放数字时,直接放那些在这个空格子所在行 阅读全文
posted @ 2018-03-08 19:05 柳暗花明_liu 阅读(187) 评论(0) 推荐(0)
摘要:题目描述: 少林寺的宝贝“少林神棍”断成了n根长短不一的小木棒,现在要把这些小木棒重新拼若干跟等长的棍子,求棍长最短是多少? 原题地址 先放上从这道题应该学到的经验: 1,要选择简合适的搜索顺序,如果一个人物分成多步,要优先尝试可能性少的。 (优先尝试长的木棒) 2,要发现表面上的不同,实质上等效的 阅读全文
posted @ 2018-03-07 20:12 柳暗花明_liu 阅读(606) 评论(0) 推荐(0)
摘要:题目描述 递归函数中为什么最后有一个 =false? 这个问题一开始我胡思乱想了很多,请教了大佬,在自己也想了想,其实答案就只是:要把它标记为false,因为别的路径可能还会访问到它 这种写法在大佬看来是要超时的,没有超时的原因在于深色高亮部分代码: if(step>min) return; 另外, 阅读全文
posted @ 2018-02-26 11:38 柳暗花明_liu 阅读(243) 评论(0) 推荐(0)
摘要:题干略。 注意八连块的遍历方式,秒得很: 阅读全文
posted @ 2018-02-09 20:32 柳暗花明_liu 阅读(131) 评论(0) 推荐(0)
摘要:题干在最后。 这道题本来是一道DP的练习题,的真不好意思的是,尽管那道更复杂的poj1661我最终做出来了,可是花太多时间了!我决定改变学习策略,多看别人的,等有底子了,再自己来! 要知道国外一位伟人曾说过这样的话: 年轻人,不要总想着创造,先学习再说。 ——沃·兹基硕德 不过说实话,我真的觉得自己 阅读全文
posted @ 2018-02-09 20:29 柳暗花明_liu 阅读(313) 评论(0) 推荐(0)