#include <bits/stdc++.h>
#include "code.h"
using namespace std;
int a[1005][10005], mn[1005], mx[1005];
vector<int> Nadji(int n, int k){
    if(n*n==k){
        for(int i=1; i<=n; ++i)
            for(int j=1; j<=n; ++j)
                a[i][j]=Pitaj(i,j);
        for(int i=1; i<=n; ++i){
            mx[i]=a[i][1];
            for(int j=2; j<=n; ++j){
                if(a[i][j]>mx[i]) mx[i]=a[i][j];
            }
        }
        for(int j=1; j<=n; ++j){
            mn[j]=a[1][j];
            for(int i=2;i<=n;++i){
                if(a[i][j]<mn[j]) mn[j]=a[i][j];
            }
        }
        for(int i=1; i<=n; ++i){
            for(int j=1; j<=n;++j){
                if(a[i][j]==mn[j] && mn[j]==mx[i]){
                    vector<int> v;
                    v.push_back(i);
                    v.push_back(j);
                    return v;
                }
            }
        }
    }
    bool prvi=true;
    if(n==1000 && k==5000){
        int l=1, t=Pitaj(1,1), brd=0, ld=0;
        while(l<n && t!=3){
            if(t==2) {
                    brd++;
                    ld=l;
            }
            l++;
            t=Pitaj(1,l);
        }
        if(prvi && l==n && t!=3){
            if(brd!=1){
                    vector <int> v;
                    v.push_back(0);v.push_back(0);
                    return v;
            }
            int d=2;
            t=Pitaj(2,ld);
            while(d<n && t==3){
                d++;
                t=Pitaj(d,ld);
            }
            if(t!=3){
                 vector <int> v;
                 v.push_back(0);v.push_back(0);
                 return v;
            }
            vector<int> v;
            v.push_back(1);
            v.push_back(ld);
            return v;
        }
        //l mi je na prvoj trojci
        int d=2;
        ld=0;brd=0; t=Pitaj(2,l);
        while(d<n && t!=1){
            if(t==2){
                brd++;
                ld=d;
            }
            d++;
            t=Pitaj(d,l);
        }
        if(brd!=1 || t==1){
            l++;
            t=Pitaj(1,l);
            prvi=false;
            continue;
        }
        int r=1;
        t=Pitaj(d,1);
        while(r<n && t==1){
            if(r==l){
                r++;
                continue;
            }
            r++;
            t=Pitaj(d,r);
        }
        if(t!=1){

                 vector <int> v;
                 v.push_back(0);v.push_back(0);
                 return v;
        }
        else{
            vector<int> v;
            v.push_back(d); v.push_back(l);
            return v;
        }
        prvi=false;
    }
    vector <int> v;
    v.push_back(0);v.push_back(0);
    return v;
}