清明——T4
原题https://www.luogu.com.cn/problem/U200233?contestId=106197
深搜模版题 结构体+方向存储:
struct MAP
{
int x,y;
}a[1000010];
int dx[5]={0,0,0,-1,1},dy[5]={0,-1,1,0,0};
核心代码:
for(head=1;head<=tail;head++)
{
for(int i=1;i<=4;i++)
{
int xx=a[head].x+dx[i],yy=a[head].y+dy[i];
if(!f[xx][yy])
{
d[xx][yy]=d[a[head].x][a[head].y]+1;
f[xx][yy]=true;
a[++tail].x=xx;
a[tail].y=yy;
}
}
}
比较简单但细节很多!!!