#include <stdio.h> #include <stdlib.h> int m,n,meg=0,vx,vy,gert; char col,map[400][400]; int imap[400][400]; void Init(); void fill(int x,int y, int ert,char color); void hid(int x,int y); int main() { int type,i,j; scanf("%d",&type); scanf("%d%d",&n,&m); Init(); char s[400]; gets(s); for(i=0;i<n;i++) gets(map[i]); if(type==1) { for(i=0;i<n;i++) for(j=0;j<m;j++) if(imap[i][j]==0) { gert=0; fill(i,j,1,map[i][j]); if(gert>meg)meg=gert; } printf("%d",meg); } else { for(i=0;i<n;i++) for(j=0;j<m;j++) { Init(); hid(i,j); } printf("%d %d\n%c",vx+1,vy+1,col); } return 0; } void Init() { int i,j; for(i=0;i<n;i++) for(j=0;j<m;j++) imap[i][j]=0; } void fill(int x,int y,int ert,char color) { imap[x][y]=ert; gert++; if(x>0)if((map[x-1][y]==color)&&(imap[x-1][y]==0))fill(x-1,y,ert+1,color); if(x<n-1)if((map[x+1][y]==color)&&(imap[x+1][y]==0))fill(x+1,y,ert+1,color); if(y>0)if((map[x][y-1]==color)&&(imap[x][y-1]==0))fill(x,y-1,ert+1,color); if(y<m-1)if((map[x][y+1]==color)&&(imap[x][y+1]==0))fill(x,y+1,ert+1,color); } void hid(int x,int y) //a hidat meg kell keresni es aztan elinditani a fill-t { if((x>0)&&(x<n-1)&&(y>0)&&(y<m-1)) { if(map[x][y]!=map[x+1][y]) { gert=0; fill(x,y,1,map[x+1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x+1][y]; } } if(map[x][y]!=map[x-1][y]) { gert=0; fill(x,y,1,map[x-1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x-1][y]; } } if(map[x][y]!=map[x][y+1]) { gert=0; fill(x,y,1,map[x][y+1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y+1]; } } if(map[x][y]!=map[x][y-1]) { gert=0; fill(x,y,1,map[x][y-1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y-1]; } } } else { if(x==0) { if(y==0) { if(map[x][y]!=map[x+1][y]) { gert=0; fill(x,y,1,map[x+1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x+1][y]; } } if(map[x][y]!=map[x][y+1]) { gert=0; fill(x,y,1,map[x][y+1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y+1]; } } } else { if (y==m-1) { if(map[x][y]!=map[x+1][y]) { gert=0; fill(x,y,1,map[x+1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x+1][y]; } } if(map[x][y]!=map[x][y-1]) { gert=0; fill(x,y,1,map[x][y-1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y-1]; } } } else { if(map[x][y]!=map[x+1][y]) { gert=0; fill(x,y,1,map[x+1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x+1][y]; } } if(map[x][y]!=map[x][y-1]) { gert=0; fill(x,y,1,map[x][y-1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y-1]; } } if(map[x][y]!=map[x][y+1]) { gert=0; fill(x,y,1,map[x][y+1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y+1]; } } } } } else { if(x!=m-1) { if(y==0) { if(map[x][y]!=map[x+1][y]) { gert=0; fill(x,y,1,map[x+1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x+1][y]; } } if(map[x][y]!=map[x-1][y]) { gert=0; fill(x,y,1,map[x-1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x-1][y]; } } if(map[x][y]!=map[x][y+1]) { gert=0; fill(x,y,1,map[x][y+1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y+1]; } } } else { if(y==m-1) { if(map[x][y]!=map[x+1][y]) { gert=0; fill(x,y,1,map[x+1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x+1][y]; } } if(map[x][y]!=map[x-1][y]) { gert=0; fill(x,y,1,map[x-1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x-1][y]; } } if(map[x][y]!=map[x][y-1]) { gert=0; fill(x,y,1,map[x][y-1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y-1]; } } } } } else { if(y==0) { if(map[x][y]!=map[x-1][y]) { gert=0; fill(x,y,1,map[x-1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x-1][y]; } } if(map[x][y]!=map[x][y+1]) { gert=0; fill(x,y,1,map[x][y+1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y+1]; } } } else { if(y==m-1) { if(map[x][y]!=map[x-1][y]) { gert=0; fill(x,y,1,map[x-1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x-1][y]; } } if(map[x][y]!=map[x][y-1]) { gert=0; fill(x,y,1,map[x][y-1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y-1]; } } } else { if(map[x][y]!=map[x-1][y]) { gert=0; fill(x,y,1,map[x-1][y]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x-1][y]; } } if(map[x][y]!=map[x][y+1]) { gert=0; fill(x,y,1,map[x][y+1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y+1]; } } if(map[x][y]!=map[x][y-1]) { gert=0; fill(x,y,1,map[x][y-1]); if(gert>meg) { meg=gert; vx=x; vy=y; col=map[x][y-1]; } } } } } } } }