class Solution {
public:
    vector<int> findElement(vector<vector<int> >& mat, int n, int m, int x) {
        //从左到右,从上到下,依次递增,可以比较中间的数,进行排除,最终选中目标,或者停留在目标;
        int left_up1 = 0;
        int left_up2 = 0;

        int right_down1 = n-1;
        int right_down2 = m-1;

        while(left_up1 < right_down1 || left_up2 < right_down2){  
            int mid1 = left_up1;
            int mid2 = right_down2;

            if(mat[mid1][mid2] == x){
                return {mid1, mid2};
            }else if(mat[mid1][mid2] > x){
                --right_down2;
            }else{
                ++left_up1;
            }
        }

        return {left_up1, right_down2};
    }
};