LeetCode 304. 二维区域和检索 - 矩阵不可变

解题思路

套模板

相关代码

class NumMatrix {
    int a[][] = new int[210][210];
    int s[][] = new int[210][210];
    int m,n;
    public NumMatrix(int[][] matrix) {
        for(int i=0;i<matrix.length;i++){
            for(int j=0;j<matrix[0].length;j++){
                a[i+1][j+1] = matrix[i][j];
            }
        }
        //m表示行,n表示列
        m = matrix.length;
        n = matrix[0].length;

        for(int i=1;i<=matrix.length;i++)
            for(int j=1;j<=matrix[0].length;j++)
                s[i][j] = s[i][j-1]+s[i-1][j]-s[i-1][j-1]+a[i][j];
    }
    
    public int sumRegion(int row1, int col1, int row2, int col2) {
return s[row2+1][col2+1]-s[row2+1][col1]-s[row1][col2+1]+s[row1][col1];
    }
}

/**
 * Your NumMatrix object will be instantiated and called as such:
 * NumMatrix obj = new NumMatrix(matrix);
 * int param_1 = obj.sumRegion(row1,col1,row2,col2);
 */
相关推荐
用户009938314301几秒前
代码随想录算法训练营第十三天 | 二叉树part01
数据结构·算法
shinelord明5 分钟前
【再谈设计模式】享元模式~对象共享的优化妙手
开发语言·数据结构·算法·设计模式·软件工程
დ旧言~11 分钟前
专题八:背包问题
算法·leetcode·动态规划·推荐算法
_WndProc28 分钟前
C++ 日志输出
开发语言·c++·算法
努力学习编程的伍大侠41 分钟前
基础排序算法
数据结构·c++·算法
XiaoLeisj1 小时前
【递归,搜索与回溯算法 & 综合练习】深入理解暴搜决策树:递归,搜索与回溯算法综合小专题(二)
数据结构·算法·leetcode·决策树·深度优先·剪枝
Jasmine_llq1 小时前
《 火星人 》
算法·青少年编程·c#
闻缺陷则喜何志丹2 小时前
【C++动态规划 图论】3243. 新增道路查询后的最短距离 I|1567
c++·算法·动态规划·力扣·图论·最短路·路径
Lenyiin2 小时前
01.02、判定是否互为字符重排
算法·leetcode