推 pandix: 這樣跑到n^2了06/08 11:22
推 Che31128: 這題遍尋有辦法跑n嗎06/08 11:47
推 NTHUlagka: 這題應該能O(min(m,n)) 因為他rows column都是有序的06/08 12:04
1.可以從左下開始找,如果左下是正數的話上面的行都不用看了。
Java Code:
--------------------------------------------------------
class Solution {
public int countNegatives(int[][] grid) {
int count = 0;
int n = grid.length;
int m = grid[0] .length;
int row = n - 1;
int col = 0;
while (col < m && row >= 0) {
if (grid[row][col] < 0) {
count += m - col;
row--;
} else {
col++;
}
}
return count;
}
}
--------------------------------------------------------
https://i.imgur.com/8ZXLj1O.jpeg
--
https://i.imgur.com/3e5CZfj.jpg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.100.75.86 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1686199575.A.F3D.html
→ wwndbk: 大師 06/08 12:54
→ JIWP: 大師 06/08 12:59
推 NTHUlagka: XD我原本的想法不是這樣做 但你這個比我的更好更簡潔 06/08 15:19
→ NTHUlagka: 大師 06/08 15:19
推 Che31128: 大師 06/08 15:52