#include "locmin.h"
#include<bits/stdc++.h>
using namespace std;
std::pair <int, int> find_locmin_point(int N, int M) {
    int lc=1,rc=M;
    int lr=1,rr=N;
    while(lc<rc || lr<rr)
    {
        if(lc<rc)
        {
            int mc=(lc+rc)/2;
            long long m1=LLONG_MAX;
            long long m2=LLONG_MAX;
            for(int i=lr;i<=rr;i++)
            {
                m1=min(m1,value(i,mc));
                m2=min(m2,value(i,mc+1));
            }
            if(m1<m2)
            {
                rc=mc;
            }
            else
            {
                lc=mc+1;
            }
        }
        if(lr<rr)
        {
            int mr=(lr+rr)/2;
            long long m1=LLONG_MAX;
            long long m2=LLONG_MAX;
            for(int i=lc;i<=rc;i++)
            {
                m1=min(m1,value(mr,i));
                m2=min(m2,value(mr+1,i));
            }
            if(m1<m2)
            {
                rr=mr;
            }
            else
            {
                lr=mr+1;
            }
        }
    }
    return {lr,lc};
}
