BFS
文章平均质量分 85
ACM_Napoleon
这个作者很懒,什么都没留下…
展开
-
Codeforces Round #139 (Div. 2) D. Snake
http://codeforces.com/problemset/problem/225/D贪吃蛇的模型, 蛇的长度(3,9),地图大小, n and m (1 ≤ n, m ≤ 15) , 重点是 状态压缩记录蛇的状态,还有 蛇先动身体 后动头,就是头可以到达它的尾部。之后BFS。 开始想的是 记录蛇的 头的位置 和头对于第二节的 方向。 这样的状态会缺失,下面的这个数据就可以说明这样原创 2014-03-05 21:24:09 · 1085 阅读 · 0 评论 -
ZOJ 3814 / 2014 牡丹江赛区网络赛 F. Sawtooth Puzzle
题目: LINK原创 2014-09-08 17:59:48 · 2406 阅读 · 0 评论 -
HDU 1430 魔板 (BFS)
题目: LINK给定一个1~8的序列,有三种变换,最少经过多少次变换得到目的序列。若最少的变换有多种取字典序最小的。其实,是很裸的bfs,但是对于每次输入都BFS会TLE.会发现无论输入什么,起始状态都可以转化看做同一种状态的,只是数字的编号不同而已。因而可以作一个映射,使得起始状态都一样,而只把这个统一的起始状态BFS一次,搜索到所有的结果8!。之后的每次输入数据,映射后原创 2014-08-27 22:23:59 · 835 阅读 · 0 评论 -
HDU 3309 Roll The Cube (BFS)
题目:LINK模拟搜索题目BFS,给定的图不大22*22,关键是如何记录搜索过的状态,开5维[x1][y1][x2][y2][4],分别表示两个球x1, y1, x2, y2坐标,4表示两个洞(因为两洞坐标不变)的存在状态00表示都被填01表示第一个被填10表示第二个被填,11表示都存在 注意,两球虽然同时运动,但一个球遇到障碍物,另一个球可能可以运动,但是如果被挡不能运动的球的坐标原创 2014-08-14 09:42:18 · 790 阅读 · 0 评论 -
HDU 2234 无题I (BFS,映射)
题目: LINK如果对于每个数据,直接搜索5步内能否到达终态,会TLE。其实,可以发现终态是固定的,就是2*4!种。所以可以从终态开始搜索。 1111222233334444和1234123412341234以这两个为初始状态搜索,相当于预处理。之后对于每个输入的数据可以进行映射,其实就是4!种的排列。对于每一种映射,取步数最少的就可以了。原创 2014-08-28 16:48:06 · 777 阅读 · 0 评论 -
HDU 1043 / POJ 1077 Eight(八数码问题)
题目: HUDPOJ 这就是我们以前玩过的一种游戏,题目是3*3的格子有一个是空的,把他们还原成特定的顺序.有人说没有做过这个题目的人生是不完整的? 我写了一发纯暴力,map 判重,map 记录路径 竟然让我在HDU水过了,代码太挫了就不贴了。其实可以发现 这样判重是非常耗时,而且 显然可以找到一个hash关系的,因为一共有9!种排列方式 ,如果能找到一种双射的话,无论是判重原创 2014-08-30 11:54:22 · 973 阅读 · 0 评论 -
POJ 聪明的打字员
题目: LINK通过给定的六种操作将一个六位数变为另一个六位数,求需要的最少操作数。六种操作: 左移和右移:将光标位置左移一位或右移一位,在第一位时无法左移,最后一位时无法右移。 左交换和右交换:将光标位置的数字与第一位或最后一位交换 增大或减小:将光标位置的数字增大或减小1最容易想到的做法是直接BFS,6*1000000 个状态,妥妥TLE。可以把六原创 2014-09-04 10:57:37 · 943 阅读 · 0 评论