1351. 统计有序矩阵中的负数
Posted panweiwei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1351. 统计有序矩阵中的负数相关的知识,希望对你有一定的参考价值。
方法一:二分查找。
class Solution(object):
# 二分法
def countNegatives(self, grid):
"""
:type grid: List[List[int]]
:rtype: int
"""
ans = 0
for nums in grid:
if nums[0] < 0:
ans += len(nums)
continue
if nums[-1] >= 0:
continue
i, j = 0, len(nums) - 1
while i <= j:
mid = int(i + (j - i) / 2)
if nums[mid] >= 0:
i = mid + 1
else:
j = mid - 1
if nums[i] < 0:
ans += len(nums) - i
return ans
方法二:暴力解。
class Solution(object):
def countNegatives(self, grid):
"""
:type grid: List[List[int]]
:rtype: int
"""
ans = 0
for i in range(len(grid)):
if grid[i][0] < 0:
ans += len(grid[i])
else:
for j in range(len(grid[i])):
if grid[i][j] < 0:
ans += 1
return ans
以上是关于1351. 统计有序矩阵中的负数的主要内容,如果未能解决你的问题,请参考以下文章