#include<bits/stdc++.h> using namespace std; int n,m,ans; char a[21][21]; void dfs(int x,int y) { ans++; if(a[x+1][y]=='.') a[x+1][y]='#',dfs(x+1,y); if(a[x][y+1]=='.') a[x][y+1]='#',dfs(x,y+1); if(a[x-1][y]=='.') a[x-1][y]='#',dfs(x-1,y); if(a[x][y-1]=='.') a[x][y-1]='#',dfs(x,y-1); } int main(){ cin>>m>>n; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { cin>>a[i][j]; } } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { if(a[i][j]=='@') dfs(i,j); } } cout<<ans; } /************************************************************** Problem: 1897 User: wuyunfeng Language: C++ Result: Accepted Time:18 ms Memory:2072 kb ****************************************************************/