搜索练习
文章平均质量分 77
catch_catch
这个作者很懒,什么都没留下…
展开
-
kuangbin带你飞——专题1——简单搜索E——求有01组成的十进制数问题
#include#include#include#include#include#include#includetypedef long long LL;using namespace std;LL ans[202];int n;void bfs(){ queue q; long long o=1; q.push(o); while(!q.原创 2015-01-31 22:34:43 · 782 阅读 · 0 评论 -
FZU 2150 Fire Game BFS求解
题目链接:http://acm.fzu.edu.cn/problem.php?pid=2150题意:给定一个草坪,两人分别点燃一个草堆(可以相同),求所有草堆都着火时的最小时间。谈起这题也是有点悲催,TLE了好多次,看了其他人的题解再写,WA了好多次,今晚看到一篇不错的博客让我灵感来了,然后顺利AC。这篇博客是:http://m.blog.csdn.net/blog/zzzz40/38原创 2015-04-06 00:28:11 · 574 阅读 · 0 评论 -
HDU 2102 A计划 BFS求解
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2102题意简单,救公主,但是许多细节需要处理,看着数据比较小,又不是求最小时间量,第一反应就是DFS,因为DFS的代码量一般比较小,可惜TLE了,技术不够啊!1,当两边都是#时,不能过去,当对面是*时,不能过去2,不能认为只有这边是#,对面是 . 是才能过去,因为存在对面为P是的特殊原创 2015-04-11 18:26:41 · 431 阅读 · 0 评论 -
UVA 11624 Fire! 两次BFS求解
题目链接:http://uva.onlinejudge.org/external/116/11624.pdf题意:给定一个迷宫和一些着火点,火会不断想四周蔓延,求一条逃出迷宫的最短路径。思路:先用一次BFS求出火蔓延到每个点的最短时间,可以把#的时间设为0,'.'火到不了的,设为oo(这里应该注意一下,WA了一次)。后面就是常规的BFS求最短路了。代码:#include#原创 2015-04-05 00:08:20 · 516 阅读 · 0 评论 -
HDU 3567 八数码问题2 双BFS求解
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3567主要练习双BFS的写法。只有一个注意点,见代码。手写了一个模拟队列,可惜时间根本没有提升,不知为啥,在HDU上提交时,得选C++,G++会TLE。代码:#include#include#include#include#include#include#include原创 2015-04-10 22:15:54 · 776 阅读 · 0 评论 -
poj 3414 Pots BFS求解
题目链接:http://poj.org/problem?id=3414思路:很简单,就是搜索即可,只是杯中的水进行状态转移时的代码有点不太好写。代码:#include#include#include#include#include#include#include#include#include#include#include#define LL _原创 2015-04-04 14:52:28 · 484 阅读 · 0 评论 -
poj 3126 Prime Path bfs求解
题目连接:http://poj.org/problem?id=3126题意:给定两个质数,求一条两者之间的最短质数路径。这题用单BFS已经够了,但是,还是练习下双BFS吧。代码:#include#include#include#include#include#include#include#include#include#include#原创 2015-04-03 20:59:48 · 442 阅读 · 0 评论 -
HDU:1043 八数码问题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1043 这题我看了有好多方法,但这其中最好理解的一种莫过于“打表法”,所谓打表,就是枚举所有起点到终点状态的路径。如果顺序打表,就会调用很多次BFS,这时我们可以用逆序打表的方式,只要调用一次BFS就可以了,但是,这样最大的缺点,我想应该是占用内存太大。所以,我们可以这样想,只要是与边权无关的路原创 2015-02-20 20:33:24 · 1124 阅读 · 0 评论 -
HDU(1043):八数码的 A* 与 双BFS算法
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1043 说实话,这道题我算是写了很久了,这道题当然也让我收获甚多,作为新手,刚开始的话,我是用 map作为标识,显然这样是行不通的。直到后来,百度上意外搜到了bin神的代码,运用逆序枚举的方法,后面直接打表就行行了,我提交的代码:http://blog.csdn.net/i_am_a_winer/a原创 2015-02-21 18:37:33 · 1872 阅读 · 0 评论 -
杭电1026
提交了几遍,用DFS超时,又该用BFS,但是内存有超。交了几遍还是不知怎么解决,后来才知道,需要一个vis数组来表示已经入队的点,解决重复入队的问题。代码如下: #include#include#include#include#include#include#define Max 0xfffffff#includestruct node{原创 2015-01-21 21:35:30 · 444 阅读 · 0 评论 -
hdu(2181):哈密顿绕行世界问题,dfs遍历
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2181此题真的是一个水题,当然也只有这种题目才给了我前进的动力,要是一直被各种打压,岂不得累死!这个题只是求路径存在问题,所以正十二面体长啥样样我们并不关心,只要打印对于解就可以了。下面是一些关于正十二面体的一些知识点: 这是正十二面体的样子:,展开图: 一些常用数原创 2015-02-22 13:48:59 · 1181 阅读 · 0 评论 -
HDU(3567):八数码问题(升级版)——双BFS
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3567 有了HDU 1043的基础,此题就变得比较容易了,如果用A*算法,感觉路径不太好打印,所以就放弃了,看到有一种好像和1043一样的打表法,但是没怎么能理解,也就放弃了,虽然要打印最小字典序,单向BFS显然会TLE,所以我只能用双向BFS了。 好在,此题的输入保证有解,否则还得用一原创 2015-02-22 01:44:16 · 696 阅读 · 0 评论 -
[kuangbin带你飞]专题1——简单搜索——母牛翻转问题
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=65959#problem/D话说这个问题的思路是,枚举第一行,然后进行模拟,但是还是不怎么能懂,看了bin神的代码,自己差不多原样写了下来,但是,有的地方还是不怎么能懂。知道是按顺序模拟,但还是,没能完全理解透,相信时间会解决的。 发下代码:#includ原创 2015-01-31 22:09:38 · 919 阅读 · 0 评论 -
POJ 2387 Til the Cows Come Home BFS最短路求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/A题意:给定某些点之间的距离,起终点一定,求回到目的地的最短距离。以前用的是Djikstra写的,矩阵的最短路写多了,第一想到的就是BFS,Dijkstra的循环写法似乎有点忘记了。习惯性的还是比较喜欢用邻接矩阵来存储,练习下邻接表的写法。原创 2015-04-14 22:18:53 · 379 阅读 · 0 评论