题目浅析

  • 想查看原题可以点击题目链接

  • 简单地说,就是给一个行列都是非升序排列的数组,其中整数可正可负,求整个数组的负数个数。

思路分享

代码解答(强烈建议自行解答后再看)

  • 参考题解
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Solution:
def countNegatives(self, grid: List[List[int]]) -> int:
m, n = len(grid), len(grid[0])
ans = 0
low_col = n - 1
for i in range(m):
while low_col >= 0 and grid[i][low_col] < 0:
low_col -= 1

if low_col < 0:
break

ans += low_col + 1

return m*n-ans