/*
F - 广搜 基础
Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u
Submit
Status
Description
Technicians in a pathology lab analyze digitized images of slides. Objects on a sl...
分类:
其他好文 时间:
2014-07-13 15:40:14
阅读次数:
229
双向广搜(2011-08-31 16:45:24)Eight题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1043讲到双向广搜,那就不能不讲经典的八数码问题,有人说不做此题人生不完整 。所谓双向广搜,就是初始结点向目标结点和目标结点向初始结点同时扩展,...
分类:
其他好文 时间:
2014-07-08 22:39:42
阅读次数:
422
自己之前的不见了。。这题是双向广搜即可过。。 1 // Colour Hash (色彩缤纷游戏) 2 // PC/UVa IDs: 110807/704, Popularity: B, Success rate: average Level: 3 3 // Verdict: Accepted ...
分类:
其他好文 时间:
2014-06-28 20:42:53
阅读次数:
194
题目 //不能广搜,会超内存//可以用dp思想模拟//map 后来保存的是 保存由前面推来的最大的幸运总值的点//下标从1开始,不然倍数会有问题//AC 代码:AC代码//不能广搜,会超内存//可以用dp思想模拟//map 后来保存的是 保存由前面推来的最大的幸运总值的点//下标从1开始,不然...
分类:
其他好文 时间:
2014-06-26 16:20:49
阅读次数:
234
题意:在二维8*8的方格,给定4个初始点和4个最终点,问在8步内是否能从初始点走到最终点,
规则:每个点能上下左右移动,若4个方向已经有点则可以跳到下一个点。
双向广搜:同时对初始点和最终点广搜4步,对每一步记录状态,初始点为‘1’,最终点为‘2’,
若在限定时间内初始点的状态能到达‘2’,或最终点的状态能到达‘1’,则为YES!要记得排序。。
#include
#includ...
分类:
其他好文 时间:
2014-06-22 20:00:14
阅读次数:
175
题意:给你初始4个数字和目标4个数字,问是否能由初始经过变换到目标数字;
变换规则:每个数字可以加1(9+1=1)或减1(1-1=9),或交换相邻的数字(最左和最右不是相邻的)。
双向广搜:分别对初始和目标数字进行广搜,vis数组用1和2标记两种已搜索的数字,用mp数组记录状态的步数。
当从前往后搜可以到达2或从后往前搜可以到达1状态则就可以了。。。
#in...
分类:
其他好文 时间:
2014-06-22 19:38:26
阅读次数:
231
题意:有M,G两人和鬼魂(Z)在n*m的方格内,M每秒走3步,G每秒走一步,鬼魂每秒走2步,问是否能
不遇到鬼魂下两人相遇,鬼魂可以穿墙(X),人不可以。初始鬼魂有2个。
#include
#include
#include
#include
#include
#include
#include
#define M 800
using namespace std...
分类:
Web程序 时间:
2014-06-22 18:57:14
阅读次数:
189
这道题有深搜和广搜。深搜还有要求,靠左或靠右。下面以靠左为例,可以把简单分为上北,下南,左西,右东四个方向。向东就是横坐标i不变,纵坐标j加1(i与j其实就是下标)。其他方向也可以这样确定。通过上一步方向可以确定下一步应该从哪个方向开始搜。比如说,是向北走的,就必须先搜西,西不可以走,再搜北,如果北...
分类:
其他好文 时间:
2014-06-20 16:58:30
阅读次数:
179
Nightmare
时间限制:1000 ms | 内存限制:65535 KB
难度:4
描述
Ignatius had a nightmare last night. He found himself in a labyrinth with a time bomb on him. The labyrinth has an exit, Ignatius should ...
分类:
Web程序 时间:
2014-06-16 18:57:52
阅读次数:
268
//在外面加一圈非0,再广搜
#include
#include
using std::queue;
int t, w, h, arr[962][1442];
int mov[][2] = {-1, 0, 0, 1, 1, 0, 0, -1};
queue Q;
bool check(int x, int y){
if(x h + 1 || y > w + 1)
return 0;...
分类:
其他好文 时间:
2014-06-14 10:06:32
阅读次数:
276