摘要: 这道题个人认为隐含着状态转换,所以想到的还是BFS,将其中一位数加一或减一或交换临近两位,进入下一状态,使用一个大小为10000的bool数组判重,由于BFS的特性,得到的一定是最小步数; 普通BFS代码如下:#include#include#in... 阅读全文
posted @ 2017-07-20 20:14 Pretty9 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 1674: 水果消除 时间限制: 2 Sec 内存限制: 128 MB提交: 335 解决: 164[提交][状态][讨论版] 题目描述 “水果消除”是一款手机游戏,相信大家都玩过或玩过类似的游戏。 下面是“水果消除”游戏的一种初始状态。 消除的基本规则:如果有2个或2个以上的相同水果连在一起,则可 阅读全文
posted @ 2017-07-20 20:05 Pretty9 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 这是往年校赛的一道题,最开始做这道题的时候还没有系统的学习过搜索,用了C语言学的回溯法尝试,毫无疑问的TLE; 学习了DFS之后,自己的剪枝功力不够,又是TLE,最后学了BFS之后,哇,终于做出来了,别提多开心了,然后意识... 阅读全文
posted @ 2017-07-20 19:55 Pretty9 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 搜索专题:Balloons 这道题一看与时间有关,第一想到的就是BFS,定义一个状态,包含每一个状态的剩余气球数,已经进行的时间和每一个志愿者上一次吹气球的时间; 每一次状态转换时,检查是否有没有使用的志愿者,或者是已经休息结束可以进行下一轮吹气球的志愿者,如果没有,就将进行的时间加一,进入下一个状 阅读全文
posted @ 2017-07-20 19:30 Pretty9 阅读(107) 评论(0) 推荐(0) 编辑