Tempter of the Bones
原题:hdoj 1010
原题大意又是走迷宫的题目,不过这题有点不一样,因为要求狗狗要在T时刻恰好走到D处.
算法分析明显dfs,不过直接深搜很快就会发现超时了,所以一定得剪枝,百度了下,除了剩余最短步数大于剩余时间外还有一个奇偶剪枝.
程序代码#include <iostream>
#include <math.h>
#include <memory.h>
using namespace std;
int dx[]={0,0,1,-1};
int dy[]={1,-1,0,0};
int n,m,t;//对应N,M,T
char maze[7][7];//迷宫
bool used[7][7];
struct Point{
int x,y;
};
Point start,door;
int flag;
void dfs(int x,int y,int time)
{
if(flag) return ;//如果找到就return!否则容易超时
if(time>t) return;
if(x==doo
...