1 条题解
-
1
#include <bits/stdc++.h> using namespace std; int a[101][101]; int n; void dfs(int i,int j) { if(a[i][j]2||a[i][j]1||1>i||i>n||1>j||j>n) return; a[i][j]=2; dfs(i-1,j); dfs(i+1,j); dfs(i,j-1); dfs(i,j+1); return; } int main() { cin>>n; for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { cin>>a[i][j]; } } for(int i=1;i<=n;i++) { if(i1||in) { for(int j=1;j<=n;j++) { dfs(i,j); } } else { if(a[i][1]==0) { dfs(i,1); } if(a[i][n]==0) { dfs(i,n); } } } for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { if(a[i][j]==2) { cout<<0<<" "; } else if(a[i][j]==0) { cout<<2<<" "; } else cout<<1<<" "; } cout<<endl; } return 0; }
信息
- ID
- 2092
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 9
- 标签
- 递交数
- 9
- 已通过
- 5
- 上传者