标签:
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; char mat[50][50]; int n,m; int ans; int op[4][2]={0,1,0,-1,1,0,-1,0}; bool ok(int x,int y) { if(0<=x&&x<n&&0<=y&&y<m&&mat[x][y]==‘.‘) return true; return false; } void dfs(int x,int y) { ans++; for(int i=0;i<4;i++) { int tx=x+op[i][0]; int ty=y+op[i][1]; if(ok(tx,ty)) { mat[tx][ty]=‘*‘; dfs(tx,ty); } } } int main() { int i,j,k; int x,y; while(scanf("%d%d",&m,&n)!=EOF) { if(n==0&&m==0) break; ans=0; for(i=0;i<n;i++) { scanf("%s",mat[i]); for(j=0;j<m;j++) { if(mat[i][j]==‘@‘) {x=i;y=j;} } } dfs(x,y); //for(i=0;i<n;i++) printf("%s\n",mat[i]); printf("%d\n",ans); } return 0; }
标签:
原文地址:http://www.cnblogs.com/sola1994/p/4246954.html