比赛 |
20181007 |
评测结果 |
ATAAAAATTT |
题目名称 |
泥潭 |
最终得分 |
60 |
用户昵称 |
梦那边的美好ET |
运行时间 |
4.963 s |
代码语言 |
C++ |
内存使用 |
10.94 MiB |
提交时间 |
2018-10-06 19:01:19 |
显示代码纯文本
#include<iostream>
#include<algorithm>
#include<cmath>
#include<cstring>
#include<cstdio>
using namespace std;
int f[1010][1010],n,x,y,ans=0,a1,a2,mp[1010][1010];
int main(){
freopen("mud.in","r",stdin);
freopen("mud.out","w",stdout);
scanf("%d%d%d",&x,&y,&n);
for(int i=1;i<=n;i++){
scanf("%d%d",&a1,&a2);
f[a1+500][a2+500]=-1;
}
f[500][500]=1;
while(!f[x+500][y+500]){ans++;
for(int i=1;i<=1000;i++)
for(int j=1;j<=1000;j++)
mp[i][j]=f[i][j];
for(int i=1;i<=1000;i++)
for(int j=1;j<=1000;j++)
if((f[i-1][j]==1||f[i+1][j]==1||f[i][j-1]==1||f[i][j+1]==1)&&f[i][j]==0)
mp[i][j]=1;
for(int i=1;i<=1000;i++)
for(int j=1;j<=1000;j++)
f[i][j]=mp[i][j];
}
printf("%d",ans);
return 0;
}