Problem of the day
You have been given a 2-D array 'mat' of size 'M x N' where 'M' and 'N' denote the number of rows and columns, respectively. The elements of each row are sorted in non-decreasing order.
Moreover, the first element of a row is greater than the last element of the previous row (if it exists).
You are given an integer ‘target’, and your task is to find if it exists in the given 'mat' or not.
Input: ‘M’ = 3, 'N' = 4, ‘mat’ = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]], ‘target’ = 8
Output: true
Explanation: The output should be true as '8' exists in the matrix.
3 4 8
1 2 3 4
5 6 7 8
9 10 11 12
true
The ‘target’ = 8 exists in the 'mat' at index (1, 3).
3 3 78
1 2 4
6 7 8
9 10 34
false
The ‘target' = 78 does not exist in the 'mat'. Therefore in the output, we see 'false'.
1 <= N <= 50
1 <= M <= 50
-10^5 <= mat[i], target <= 10^5
Time Limit: 1 sec