LeetCode Problem
1351. Count Negative Numbers in a Sorted Matrix
Link to LeetCode
Given a m x n matrix grid which is sorted in non-increasing order both row-wise and column-wise, return the number of negative numbers in grid.
Example 1:
Input: grid = [[4,3,2,-1],[3,2,1,-1],[1,1,-1,-2],[-1,-1,-2,-3]]
Output: 8
Explanation: There are 8 negatives number in the matrix.
Example 2:
Input: grid = [[3,2],[1,0]]
Output: 0
class Solution {
public int countNegatives(int[][] grid) {
int count = 0;
int row = 0, col = grid[0].length-1;
while (row < grid.length && col >= 0) {
if (grid[row][col] < 0) {
col--;
} else {
count += grid[0].length - col -1;
row++;
}
}
if (row < grid.length) {
count += (grid.length - row) * grid[0].length;
}
return count;
}
}