class Solution {
public:
    vector<vector<int> > matrix;
    int myTarget;
    bool flag;
    void isExist(int x,int y)
    {
        if(x<0||x>=matrix.size()||y<0||y>=matrix[0].size())  return;
        if(matrix[x][y]==myTarget) {
            flag=1;
            return;
        }
        else if(matrix[x][y]>myTarget)   isExist(x, y-1);
        else  isExist(x+1,y);
    }
    bool Find(int target, vector<vector<int> > array) {
        if(array.size()==0) return false;
        flag=0;
        matrix=array;
        myTarget=target;
        isExist(0,array[0].size()-1);
        return flag;
    }
};