/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * @author Senky
 * @date 2023.04.23
 * @par url https://www.nowcoder.com/creation/manager/content/584337070?type=column&status=-1
 * @param target int整型 
 * @param array int整型二维数组 
 * @param arrayRowLen int array数组行数
 * @param arrayColLen int* array数组列数
 * @return bool布尔型
 */
bool Find(int target, int** array, int arrayRowLen, int* arrayColLen ) {
    // write code here
    /*从左下角开始往右上角寻找*/
    int row = arrayRowLen - 1;
    int column = 0;

    bool flag = false;
    
    /*合法的行列范围内寻找*/
    while( (row >=0) && (column < *arrayColLen) )
    {
        if(array[row][column] < target)
        {
            column++;
        }
        else if(array[row][column] > target)
        {
            row--;
        }
        else if(array[row][column] == target)
        {
            flag = true;
            break;
        }
    }
    return flag;
}