#include <bits/stdc++.h>
#include "locmin.h"

const int DI[] = {1, -1, 0, 0};
const int DJ[] = {0, 0, 1, -1};
long long mat[502][502];

static inline bool Verif(int i, int j, int n, int m) {
    for(int dir = 0; dir < 4; dir++) {
        int in = i + DI[dir];
        int jn = j + DJ[dir];
        if(1 <= i && i <= n && 1 <= j && j <= m) {
            if(mat[i][j] <= mat[in][jn]) return false;
        }
    }
    return true;
}

std::pair<int, int> find_locmin_point(int n, int m) {
    for(int i = 1; i <= n; i++) {
        for(int j = 1; j <= m; j++) {
            mat[i][j] = value(i, j);
        }
    }

    for(int i = 1; i <= n; i++) {
        for(int j = 1; j <= m; j++) {
            if(Verif(i, j, n, m)) return {i, j};
        }
    }
}
