seen=[[]] a=[[]] class DTO(object): def __init__(self,x,y,max): self.x=x; self.y=y; self.max=max def typ_1(x,y): nr=1 seen[x][y]=1 if x>1: if (seen[x-1][y]==0) and (a[x-1][y]==a[x][y]): nr=nr+typ_1(x-1,y) if y>1: if (seen[x][y-1]==0) and (a[x][y-1]==a[x][y]): nr=nr+typ_1(x,y-1) if x1: if (seen[x-1][y]==0): if (a[x-1][y]==col): nr=nr+typ_2(x-1,y,col,0).max elif mod==0: cur=typ_2(x-1,y,col,1).max if cur>dto.max: dto.x=x dto.y=y dto.max=max clear_2() if y>1: if (seen[x][y-1]==0): if (a[x][y-1]==col): nr=nr+typ_2(x,y-1,col,0).max elif mod==0: cur=typ_2(x,y-1,col,1).max if cur>dto.max: dto.x=x dto.y=y dto.max=max clear_2() if xdto.max: dto.x=x dto.y=y dto.max=max clear_2() if ydto.max: dto.x=x dto.y=y dto.max=max clear_2() dto.max=dto.max+nr return dto typ=int(raw_input("")) s=raw_input("") prop=s.split(" ") m=int(prop[0]) n=int(prop[1]) for i in range(1,m+1): s=raw_input("") a.append([]) a[i].append('#') for j in s: a[i].append(j) a[i].append('#') seen=[[]] for i in range(1,m+1): seen.append([]) for j in range(0,n+1): seen[i].append(0) if typ==1: max=0 for i in range(1,m+1): for j in range(1,n+1): if seen[i][j]==0: cur=typ_1(i,j) if cur>max: max=cur print str(max) elif typ==2: max=0 x=-1 y=-1 col='#' for i in range(1,m+1): for j in range(1,n+1): if seen[i][j]==0: cur=typ_2(i,j,a[i][j],0) if cur.max>max: max=cur.max x=cur.x y=cur.y col=a[i][j] print str(x) + " " + str(y) print col