搜索
文章平均质量分 76
就是乐
Dont't try to rush things that need time to grow.
展开
-
HDU 1241----Oil Deposits(深搜)
跟上一篇是一样的,不再多说了。。。 Description The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large rectangular region of land at原创 2015-02-15 17:56:56 · 310 阅读 · 0 评论 -
POJ 3278----Catch that cow(广搜) 注意一维及方向数组
这是一个一维的变形, 有三种移动情况:移动到当前位置加一,减一,或者当前位置的二倍的位置。 #include #include #define N 100005 struct maze { int x; int t; }q[N],q1,q2; int used[N]; int dir[3][2]={1,1,1,-1,2,0}; int bfs(int sx,int ex) { i原创 2015-05-18 22:45:38 · 492 阅读 · 0 评论 -
HDU 1010----Tempter of the Bone (dfs+剪枝)
http://acm.hdu.edu.cn/showproblem.php?pid=1010 这个题一开始是用的bfs,可能是我的代码不够优化吧,一直TLE 但是bfs做时应注意一个条件,bfs求得是最短路径等最优化问题,假如找到出口,但是这时需判断当前所用时间和规定时间是否相等,不相等,应剪枝。 用dfs时,应做一下剪枝: t表示规定时间,mindis表示当前位置到达出口的最短距原创 2015-08-11 20:01:30 · 348 阅读 · 0 评论 -
The Best Seat in ACM Contest--12年山东省赛(广搜)需要记录数组
需要一个记录数组,反正都是搜索,万变不离其宗 题目描述 Cainiao is a university student who loves ACM contest very much. It is a festival for him once when he attends ACM Asia Regional Contest because he always can f原创 2015-05-20 13:24:44 · 297 阅读 · 0 评论 -
SDUT 2779----找朋友(广搜)
求最短时间用bfs,再说这个题用dfs好像TLE 除了用广搜,还用了队列 题目描述 X,作为户外运动的忠实爱好者,总是不想呆在家里。现在,他想把死宅Y从家里拉出来。问从X的家到Y的家的最短时间是多少。 为了简化问题,我们把地图抽象为n*m的矩阵,行编号从上到下为1 到 n,列编号从左到右为1 到 m。矩阵中’X’表示X所在的初始坐标,’Y’表示Y的位置 , ’#原创 2015-02-16 00:33:27 · 462 阅读 · 0 评论 -
HDU 1372---- Knight Moves (广搜)
在国际象棋中Knight称“马”或“骑士”,Knight的走法和中国象棋中马相同, 同样是走“日”字,或英文字母大写的“L”形 另外此题充分利用队列!!! Description Background Mr Somurolov, fabulous chess-gamer indeed, asserts that no one else but him can mo原创 2015-02-15 18:31:55 · 319 阅读 · 0 评论 -
POJ 2386----Lake Counting (深搜)
这种题深搜和广搜都能做出来,个人感觉深搜比较好 还是提几点注意: 1.明白水塘在这个题中的定义 2.明白深搜和广搜的不同之处 Description Due to recent rains, water has pooled in various places in Farmer John's field, which is represented by a rect原创 2015-02-15 17:32:38 · 348 阅读 · 0 评论 -
POJ 1321----棋盘问题(深搜)
这个题和高斯皇后问题相似 注意DFS内部剪枝,以提高运行时间效率。 下面的代码自我感觉不够优化,以后再看看别人的代码改吧 Description 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。原创 2015-02-17 16:26:49 · 387 阅读 · 0 评论 -
POJ 3984----迷宫问题(广搜)
这个题值得一提的就是用递归打印路径 Description 定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, }; 它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能原创 2015-02-16 19:54:00 · 352 阅读 · 0 评论 -
POJ 1321----棋盘问题(dfs+回溯)
#include #include int n,k,cnt; char g[10][10]; int used[10]; //用于放置棋子的列标记 void dfs(int row,int num) { int i; if(num==k) //当一种方式搜完后,方式加 1; { cnt++; re原创 2015-08-14 10:10:03 · 333 阅读 · 0 评论