#include #include #include using namespace std; const int N=405; int n, m, nrzones; char a[N][N],cu; int b[N][N], dx[]={-1, 0, 1, 0}, dy[]={0, 1, 0, -1}, d[N*N],p; bool c[N*N]; void filll(int x, int y) { b[x][y]=nrzones; d[nrzones]++; for(int i=0;i<4;i++) { if(!b[x+dx[i]][y+dy[i]]&&a[x][y]==a[x+dx[i]][y+dy[i]]) { filll(x+dx[i],y+dy[i]); } } } int main() { freopen("ferma3.in", "r", stdin); freopen("ferma3.out", "w", stdout); int i,j,k,l,sol=0,s=0,v,ma=0; pair soli; cin>>v>>n>>m; for(i=1;i<=n;i++) cin>>a[i]+1; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { if(!b[i][j]) { nrzones++; filll(i, j); if(masol) { sol=s; cu=a[i][j]; soli=make_pair(i, j); } for(l=0;l<4;l++) { c[b[i+dx[l]][j+dy[l]]]=0; } } a[i][j]=aux; } } if(v==1) cout<