Simplied a DFS\BFS with minor modification.#include #include #include #include #include #include using namespace std;typedef vector> Matrix;typedef pa...
分类:
其他好文 时间:
2015-04-27 14:51:51
阅读次数:
106
图的遍历:
定义:从图中的某一顶点出发,沿着边访问访问图中其余顶点,且使每个顶点仅被访问一次。
通常有两种遍历次序方案:
?深度优先遍历(dfs)---类似于前序遍历
?广度优先遍历(bfs)---类似于层序遍历
?深度优先遍历(dfs)
算法思想描述:
访问起始顶点v
当 v 还有邻接顶点未被访问时:(起始条件)
?深度遍历未访问的邻接顶点...
分类:
其他好文 时间:
2015-04-26 09:33:06
阅读次数:
162
题目链接:http://poj.org/problem?id=3083题目大意:给你一个迷宫,S是起点,E是终点,#是墙,.是路,S、E在迷宫的边界,并且有唯一解;求优先左转S到E的步数,优先右转S到E的步数,以及S到E的最短步数。题解:1、本题的难点在于左转优先以及右转优先,下一步的方向取决于当前...
分类:
其他好文 时间:
2015-04-24 18:39:18
阅读次数:
126
Problem Description:
LL最近沉迷于AC不能自拔,每天寝室、机房两点一线。由于长时间坐在电脑边,缺乏运动。他决定充分利用每次从寝室到机房的时间,在校园里散散步。整个HDU校园呈方形布局,可划分为n*n个小方格,代表各个区域。例如LL居住的18号宿舍位于校园的西北角,即方格(1,1)代表的地方,而机房所在的第三实验楼处于东南端的(n,n)。因有多条路线可以选择,LL希望每次的散...
分类:
其他好文 时间:
2015-04-23 19:58:43
阅读次数:
138
时间限制:1000MS 内存限制:65535K提交次数:12 通过次数:9 收入:32题型: 编程题语言: C++;CDescription现在正是期末,在复习离散数学的Acmer遇到了问题,你能帮助他吗?Acmer正在复习的是推理,不过他的推理系统可能与别人的不一样。(所以说他是一个伪Acmer~...
分类:
其他好文 时间:
2015-04-16 23:07:45
阅读次数:
230
这道是搜索水题,dfs,bfs都可以,一开始我用dfs,可是竟然出了很多错误,后来看清样例才发现题目原来是先输入列再输入行的,我说有必要这样卡别人么,然后深搜测试样例时也爆栈了(毕竟搜索类的题目基本没碰过),要记得每次访问完某个结点都要做标记的!(不然就无限递归了~)这道题我对边界都做了标记,所.....
分类:
其他好文 时间:
2015-04-03 20:56:52
阅读次数:
133
背景:竟然G++,wa了一发,同样的代码,改为C++就过。。。后来看了discuss里面人说bfs最后虽然不会用到有return 的情况,也要加上,这个warning警告了的,没想到加上就ac了。。。
思路:bfs求最短路,然后就是对一直向左和一直向右进行dfs,方法是:记录上一次来的方向,然后根据上一次来的方向确定当前方向怎样才是向左,怎样才是向右,向左的话是顺时针转动,向右的话是逆时针转动。...
分类:
其他好文 时间:
2015-04-03 15:28:19
阅读次数:
135
题意 在n*m个格子组成的草地上 你可以选择两个是草('#')的格子点燃 每个点燃的格子在下一秒其四个相邻的是草的格子也会被点燃 问点燃所有的草至少需要多少秒
DFS和BFS的综合 如果'#‘连通块的数量大于2个是肯定不能点燃所有的 先dfs判断连通块个数 再bfs找出选哪两个格子可以最快把草烧完
#include
#include
#include
using nam...
分类:
其他好文 时间:
2015-04-03 11:20:47
阅读次数:
159
题意:。表示能走,#表示不能走,@为起点,求从起点出发能走的点的数目
分析:简单的BFS或DFS
BFS代码:
#include
#include
#include
using namespace std;
int n,m;
char a[100][100];
int d[4][2]={{0,-1},{0,1},{1,0},{-1,0}};
int cnt;
int sx,sy;
struc...
分类:
其他好文 时间:
2015-04-01 09:39:38
阅读次数:
156
题目:Surrounded Regions
广搜和深搜都能解决,但是LeetCode上使用深搜时会栈溢出
DFS:
/*LeetCode Surrounded Regions
* 题目:给定一个字符数组,由'X'和'O'组成,找到所有被x包围的o并将其替换为x
* 思路:只要替换被包围的o就行,如果有一个o是边界或者上下左右中有一个是o且这个o不会被替换,则该点也不会被替换
* 从四条...
分类:
其他好文 时间:
2015-03-29 00:42:51
阅读次数:
204