ACM-搜索
游戏罢了
好好~~~~~非常好~~~~~~~~特别好~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
展开
-
NYOJ21 三个水杯
http://acm.nyist.net/JudgeOnline/problem.php?pid=21 题目思路:我用BFS实现。共有三个水杯,最大水量为100,全部状态最多有100*100*100=1000000种,则可开一个三维数组标记已经产生过的状态,减少搜索次数。 每次将三个水杯中有水的杯子倒往其他两个水杯,则每次最多入队六个状态。实现思想简单,所以代码较多。 语文老师死得早原创 2013-06-09 22:18:00 · 683 阅读 · 0 评论 -
NYOJ-27 水池数目
http://acm.nyist.net/JudgeOnline/problem.php?pid=27 思路分析:种子填充,可用BFS或DFS。从是河流或湖泊的地方开始搜索标记,访问过的地方则标记,看总共需要几次DFS或BFS搜索将所有的河流标记,则共有多少个池塘! #include #include #include #define MAX 110 int map[MAX][MAX]原创 2013-06-09 22:36:20 · 666 阅读 · 0 评论 -
POJ1753 Flip Game
题目链接:http://poj.org/problem?id=1753 题目大意:翻棋子游戏,给定一个4*4的棋盘上摆放的初始状态,棋子有黑白两色,求将所有棋子翻成同一色的最少步数。规则:每次最多翻转一个棋子和其上下左右共五个棋子,则最少三个,因为四个角上的棋子在边界上,有两个邻居不存在。若无法翻转成同一个颜色则输出 "IImpossible",初始状态即为目标状态时输出0。 题目思路:棋子总原创 2013-07-17 11:16:53 · 514 阅读 · 0 评论 -
POJ1077 八数码问题
题目链接:http://poj.org/problem?id=1077 经典的八数码问题,用单向BFS,双向BFS,A*均可解决! 难点在于状态压缩,用9代表x,那么这个矩形的数字摆放状态共有9!种。9!并不大,可以开一个数组标记状态,那么如何将一个数字摆放状态转换为一个整型的十进制数变成了解决问题的关键! 参考康托展开:http://blog.csdn.net/morgan_xww/art原创 2013-07-19 17:36:18 · 595 阅读 · 0 评论 -
POJ1011-Sticks DFS+剪枝
题目链接:http://poj.org/problem?id=1011 题目大意是有一些等长的木棍,现将他们剪成小木棍,剪短后的小木棍最多有六十四根。题目输入数据给定剪短后的小木棍的长度,求将其恢复成原来的木棍的最短长度。 本题剪枝要求较高: 剪枝(1):由于小木棍是由原来木棍剪短后得到的,那么原来木棍的长度最短的也大于等于最长的小木棍,但不会超过所有小木棍长度之和; 剪枝(2):注意到原原创 2013-07-21 10:49:18 · 543 阅读 · 0 评论 -
hdu4979 A simple math problem.
DLX+剪枝 有这个思想提示后代码实现就简单了。原创 2014-08-24 11:53:41 · 654 阅读 · 0 评论