#include <cstdio>

using namespace std;

#define lb 1
#define le 2
#define cb 3
#define ce 4
const int LIM=2005;
int n,mat[LIM][LIM],dir[LIM][LIM],dx[]={0,-1,0,1,0},dy[]={0,0,1,0,-1};
int main()
{
   //freopen("date.in","r",stdin);
   int i,j;
   scanf("%d",&n);
   for(i=1;i<=n;++i)
      for(j=1;j<=n;++j)
         scanf("%d",&mat[i][j]);
   for(i=1;i<=n;++i)
      for(j=1;j<=n;++j)
         if(dir[i][j]==0)
         {
            if(mat[i][j]==mat[i+dx[1]][j+dy[1]])
               dir[i][j]=ce,dir[i+dx[1]][j+dy[1]]=cb;
            if(mat[i][j]==mat[i+dx[2]][j+dy[2]])
               dir[i][j]=lb,dir[i+dx[2]][j+dy[2]]=le;
            if(mat[i][j]==mat[i+dx[3]][j+dy[3]])
               dir[i][j]=cb,dir[i+dx[3]][j+dy[3]]=ce;
            if(mat[i][j]==mat[i+dx[4]][j+dy[4]])
               dir[i][j]=le,dir[i+dx[4]][j+dy[4]]=lb;
         } 
   int maxim=0,lin=0,col=0;
   for(i=3;i<n;++i)
      for(j=3;j<n;++j)
         if(dir[i][j]!=lb and dir[i][j]!=cb)
            for(int k=1;i-k>1 and j-k>1;++k)
               if(dir[i][j-k]!=cb and dir[i-k][j]!=lb and (dir[i-k][j-k]!=le and dir[i-k][j-k]!=ce)) 
               {
                  if((dir[i][j-k]==lb or dir[i][j-k]==ce) and (dir[i-k][j]==le or dir[i-k][j]==cb) and (dir[i-k][j-k]==lb or dir[i-k][j-k]==cb))
                     for(int l=1;l<k;++l)
                        if(dir[i-l][j-k]!=le and dir[i-k][j-l]!=ce)
                        {
                           if(maxim<k+1)  
                              maxim=k+1,lin=i-k,col=j-k;
                        }
                        else
                           break;
                  if(k==1 and maxim<k+1)
                     maxim=k+1,lin=i-k,col=j-k;
               }    
               else
                  break;
   printf("%d %d %d",maxim,lin,col);
   return 0;
}
