搜索 BFS
文章平均质量分 77
In_Youth
-青春
展开
-
Gym100187E,Two Labyrinths,广搜
题意:给你两幅图,判断一下两幅图是否有公共的最短路径,从左上角走到右下角,有的话输出YES,否则输出NO 思路: 首先把两幅图合在一起搜一遍,看是否有公共的路径走到右下角(右下角不一定可达),有的话,记下步数,没有的话,直接输出NO; 然后,搜一遍第一幅图,记下到达右下角的最短步数(如果不可达,第一步之后就结束了); 再搜一遍第二幅图,记下到达右下角的最短步数; 最后比较这三个步数是否相原创 2015-07-28 08:48:50 · 396 阅读 · 0 评论 -
FZU2150,暴力广搜
题意就不解释了。 这道题目的话,如果用技巧的话,感觉有点难度,因为初始两点的选取不知道怎样选才能得到最短时间; 但是发现数据范围很小,这样的话,就可以暴力出所有的两点组合,在满足题意的情况下,选取最小的烧草时间即可。 #include #include #include #include #include #include using namespace std; const int N =原创 2015-07-25 11:26:39 · 364 阅读 · 0 评论 -
HDU1026,广搜输出路径题
#include #include #include #include using namespace std; #define INF 9999999 struct node { char data;//保存点的内容 int time; int x,y;//记录这点的位置,用于提供之前点的坐标 int prex,prey;//保存用最短时间到这个点的点的坐标原创 2015-07-20 15:44:07 · 450 阅读 · 0 评论 -
HDU1495,广搜
其实这是一道比较常规的搜索题,思路也很符合搜索的想法(搜索其实就是暴力出所有结果,然后选取满足条件的结果);我感觉这题就难在写代码上; 好了,先说思路吧:首先对于这三个容器(s->可乐瓶,a->杯子1,b->杯子2),只有以下几种情况:s往a里到可乐,s往b里倒可乐,a往s里倒可乐,a往b里倒可乐,b往s里倒可乐,b往a里倒可乐。所以直接暴力BFS就行了(代码详解) #include #inc原创 2015-07-24 11:34:12 · 420 阅读 · 0 评论 -
HDU2612,简单广搜题
这道题目真心蛋疼= =,看完题目,立马用双向广搜写了一发,交上去之后超时= =;后来想想,换个角度,枚举每个@,然后取最小总时间,尼玛还超时,代码实在改不动了,就去看了题解。 然而呢,我觉得题解写的有问题。。。。呵呵吧,贴上题解+我认为的bug之处#include #include #include #include #include using namespace std; struct no原创 2015-07-22 20:18:59 · 726 阅读 · 0 评论