19 条题解
-
0
#include<bits/stdc++.h> using namespace std; int fx[5]={0,-1,1,0,0},fy[5]={0,0,0,-1,1},h,w,s,maxs=INT_MIN; char a[120][120]; bool f[120][120]; void sy(int x,int y) { for (int i=1;i<=4;i++) if (x+fx[i]>=1&&y+fy[i]>=1&&x+fx[i]<=w&&y+fy[i]<=h&&a[x+fx[i]][y+fy[i]]=='.'&&f[x+fx[i]][y+fy[i]]==0) { f[x+fx[i]][y+fy[i]]=1; s++; sy(x+fx[i],y+fy[i]); } } int main() { cin>>h>>w; for (int i=1;i<=w;i++) for (int j=1;j<=h;j++) cin>>a[i][j]; for (int i=1;i<=w;i++) for (int j=1;j<=h;j++) if (a[i][j]=='@') sy(i,j); cout<<s+1; }
信息
- ID
- 103
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 47
- 已通过
- 15
- 上传者