Leetcode 304 二維區域和檢索

2021-10-01 09:57:42 字數 955 閱讀 6241

給定乙個二維矩陣,計算其子矩形範圍內元素的總和,該子矩陣的左上角為 (row1, col1) ,右下角為 (row2, col2)。

上圖子矩陣左上角 (row1, col1) = (2, 1) ,右下角(row2, col2) = (4, 3),該子矩形內元素的總和為 8。

示例:給定 matrix = [

[3, 0, 1, 4, 2],

[5, 6, 3, 2, 1],

[1, 2, 0, 1, 5],

[4, 1, 0, 1, 7],

[1, 0, 3, 0, 5]

]sumregion(2, 1, 4, 3) -> 8

sumregion(1, 1, 2, 2) -> 11

sumregion(1, 2, 2, 4) -> 12

說明:你可以假設矩陣不可變。

會多次呼叫 sumregion 方法。

你可以假設 row1 ≤ row2 且 col1 ≤ col2。

思路:動態規劃

每個點記錄每行中以他為終點的這一行的和,之後累加區域中各行的行,再減去每行中多餘的列

提交的**:

class nummatrix }}

public int sumregion(int row1, int col1, int row2, int col2)

return sum;

}/**

* your nummatrix object will be instantiated and called as such:

* nummatrix obj = new nummatrix(matrix);

* int param_1 = obj.sumregion(row1,col1,row2,col2);

*/

leetcode304 二維區域和檢索 矩陣不可變

給定乙個二維矩陣,計算其子矩形範圍內元素的總和,該子矩陣的左上角為 row1,col1 右下角為 row2,col2 上圖子矩陣左上角 row1,col1 2,1 右下角 row2,col2 4,3 該子矩形內元素的總和為 8。給定 matrix 3,0,1,4,2 5,6,3,2,1 1,2,0,...

leedcode304二維區域檢索和矩陣不可變

class nummatrix def init self,matrix list list int ifnot matrix or not matrix 0 pass else row len matrix col len matrix 0 初始化行列都為0,且row 1,col 1 self.d...

304 二維區域和檢索 矩陣不可變

題目描述 給定乙個二維矩陣,計算其子矩形範圍內元素的總和,該子矩陣的左上角為 row1,col1 右下角為 row2,col2 30 1425 6321 1201 5410 1710 305 上圖子矩陣左上角 row1,col1 2,1 右下角 row2,col2 4,3 該子矩形內元素的總和為 8...