#include<cstdio>

using namespace std;

int jos[2005][2005], stanga[2005][2005];
int mat[2005][2005];
int nr, x, y;

bool ok(int n, int t)
{
    int i, j;
    for(i = 2; i <= n - t; ++ i)
        for(j = 2; j <= n - t; ++ j)
            if(jos[i][j] >= t && jos[i][j + t] >= t && stanga[i][j] >= t && stanga[i + t][j] >= t)
            {
                nr = t;
                x = i;
                y = j;
                return 1;
            }
    return 0;
}

void rezolva(int n)
{
    int st, dr, med;
    st = 2;
    dr = n - 2;
    while(st <= dr)
    {
        med = (st + dr) / 2;
        if(ok(n, med))
            st = med + 1;
        else
            dr = med - 1;
    }
}

int main()
{
    int n, i, j, k;
    scanf("%d", &n);
    for(i = 1; i <= n; ++ i)
        for(j = 1; j <= n; ++ j)
            scanf("%d", &mat[i][j]);
    for(j = 1; j <= n; ++ j)
    {
        for(i = 1; i <= n; ++ i)
        {
            k = i;
            while(mat[k][j] != mat[k][j - 1] && k <= n)
            {
                ++ k;
            }
            for(i = i; i <= k; ++ i)
                jos[i][j] = k - i;
            i = k;
        }
    }
    for(i = 1; i <= n; ++ i)
    {
        for(j = 1; j <= n; ++ j)
        {
            k = j;
            while(mat[i][k] != mat[i - 1][k] && k < n)
            {
                ++ k;
            }
            for(j = j; j <= k; ++ j)
                stanga[i][j] = k - j;
            j = k;
        }
    }
    rezolva(n);
    printf("%d %d %d", nr, x, y);
    return 0;
}
