#include <iostream>
#include<stdlib.h>
#include<string.h>
using namespace std;
char m[21][21];//map
bool book[21][21];//book
int w,h;
int sum;//answer
int dx[4]={0,-1,0,1};
int dy[4]={-1,0,1,0};
void dfs(int x,int y)
{
for(int i=0;i<4;i++)
{
int xx=x+dx[i];
int yy=y+dy[i];
if(xx>=0&&xx<h&&yy>=0&&yy<w&&m[xx][yy]=='.'&&book[xx][yy]==false)
{
book[xx][yy]=true;
sum++;
dfs(xx,yy);
}
}
}
int main()
{
while(cin>>w>>h&&w!=0&&h!=0)
{
sum=1;
book[w][h]=true;
memset(book,false,sizeof(book));
for(int i=0;i<h;i++)
{
cin>>m[i];
}
int s,e;
for(int i=0;i<h;i++)
for(int j=0;j<w;j++)
{
if(m[i][j]=='@')
{
s=i;
e=j;
}
}
cout<<s<<" "<<e<<endl;
dfs(s,e);
cout<<sum<<endl;
}
return 0;
}
POJ1979
最新推荐文章于 2021-02-19 09:16:02 发布