#include #include #include using namespace std; int a[101][101]; char c[101][101]; int n,i,m; queue< pair > q; pair punct; int ok(int i,int j,int n,int m) { if(i>=0&&i=0&&j>n>>m; for(i=0;i>c[i][j]; } void rezolva(int xi,int yi) { q.push(make_pair(xi,yi)); a[xi][yi]=1; while(!q.empty()) { punct = q.front(); int px = punct.first; int py = punct.second; if(ok(px+1,py,n,m) && c[px+1][py]=='.') { a[px+1][py] = a[px][py] + 1; q.push(make_pair(px+1,py)); } if(ok(px,py+1,n,m) && c[px][py+1]=='.') { a[px][py+1] = a[px][py] + 1; q.push(make_pair(px,py+1)); } q.pop(); } } int main() { citeste(n,m); rezolva(0,0); int maxi = 0; for(i=0;imaxi) maxi=a[0][i]; for(i=0;imaxi) maxi=a[n-1][i]; for(i=0;imaxi) maxi=a[i][0]; for(i=0;imaxi) maxi=a[m-1][i]; cout<