5 条题解
-
-2
#include #include #include #include #include #include using namespace std; int n,b1,b2,e1,e2; int a[110][110]; int tx[5]={0,0,1,0,-1}; int ty[5]={0,1,0,-1,0};
void dfs(int x,int y){ a[x][y]=1; int fx,fy; for(int i=1;i<=4;i++){ fx = x+tx[i]; fy = y+ty[i]; if(fx>=1 && fx<=n && fy<=n && fy>=1 && a[fx][fy]0){ if(fxe1&&fy==e2){ cout<<"YES"; exit(0); } else{ dfs(fx,fy); } } } }
int main(){ cin>>n; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ cin>>a[i][j]; } } b1=1;b2=1;e1=n;e2=n; if(a[b1][b2]==1 || a[e1][e2]==1){ cout<<"NO"; } else{ dfs(1,1); cout<<"NO"; } return 0; }
信息
- ID
- 1310
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 5
- 标签
- 递交数
- 116
- 已通过
- 41
- 上传者