可爱的递归
#include <iostream>
#include<stdio.h>int w,h;char a[21][21];
using namespace std;
int p(int i,int j)
{
if(i<1||i>h||j>w||j<1)
return 0;
if(a[i][j]!='#')
{
a[i][j]='#';
return p(i-1,j)+p(i+1,j)+p(i,j-1)+p(i,j+1)+1;
}
else return 0;
}
int main()
{
int i,j;
while(scanf("%d%d",&w,&h)!=-1)
{
if(w==0&&h==0)break;
for(i=1;i<=h;i++)
{
for(j=1;j<=w;j++)
{
cin>>a[i][j];
}
}
for(i=1;i<=h;i++)
{
for(j=1;j<=w;j++)
{
if(a[i][j]=='@'){cout<<p(i,j)<<endl;break;}
}
}
}
return 0;
}