#include <bits/stdc++.h>
int n, k;
int question_num = 0;
int h[1001][1001];

int i, j, resi, resj;
int Pitaj(int i, int j)
{
	question_num++;
	if ((i < 1) || (i > n)) return -1;
	if ((j < 1) || (j > n)) return -1;
	return h[i][j];
}
std::vector<int> Nadji(int N, int K)
{
	int visine[N][N];
	if(K == N*N)
    {
	for(i = 1; i <= N; i++)
    {
        for(j = 1; j <= N; j++)
        {
            visine[i-1][j-1] = Pitaj(i, j);
        }
    }
    int maksred = 0, indeks = 0, indeks2 = 0;
    for(i = 0; i < N; i++)
    {
        bool ok = true, pazi = false;
        maksred = 0; indeks = 0, indeks2 = 0;
        for(j = 0; j < N; j++)
        {
            if(visine[i][j] > maksred)
            {
                maksred = visine[i][j];
                indeks = j;
                indeks2 = i;
                pazi = false;
            }
            else if(visine[i][j] == maksred)
            {
                pazi = true;
            }
        }
        if(pazi)
        {
            indeks = 0; indeks2 = 0;
            ok = false;
        }
        if(ok == true)
        {
            int minkol = maksred;
            for(int pom = 0; pom < N; pom++)
            {
                if(visine[pom][indeks] <= minkol && pom != indeks2)
                {
                    ok = false;
                    pom = N;
                }
            }
        }
        if(ok)
        {
            resi = indeks2 + 1;
            resj = indeks + 1;
            i = N + 5;
        }
        ok = true;
    }
    if(i == N)
    {
        resi = 0; resj = 0;
    }
    }
	std::vector<int> out;
	out.push_back(resi);
	out.push_back(resj);
	return out;
}
int main()
{
	scanf("%d%d%d", &n, &k);

	for (int i = 1; i <= n; i++)
		for (int j = 1; j <= n; j++)
			scanf("%d", &h[i][j]);

	std::vector<int> out = Nadji(n, k);

	printf("%d %d %d\n", out[0], out[1], question_num);

	return 0;
}