【二维区域和检索-矩阵不可变】python刷题记录

一夜无解,痛苦,遂拜倒于灵神门下,妄做狂徒也!

. - 力扣(LeetCode)

灵神秒解如下:

python 复制代码
class NumMatrix:
    #二维初始矩阵
    def __init__(self, matrix: List[List[int]]):
       m=len(matrix)
       n=len(matrix[0])
       #扩充一下,防止数组越界
       sum=[[0]*(n+1) for _ in range(m+1)]
       for i in range(m):
           for j in range(n):
             sum[i+1][j+1]=sum[i+1][j]+sum[i][j+1]-sum[i][j]+matrix[i][j]
       self.sum=sum

    #子矩阵计算和
    def sumRegion(self, row1: int, col1: int, row2: int, col2: int) -> int:
       return self.sum[row2+1][col2+1]-self.sum[row2+1][col1]-self.sum[row1][col2+1]+self.sum[row1][col1]
    
相关推荐
踏着七彩祥云的小丑5 小时前
pytest——Mark标记
开发语言·python·pytest
W23035765735 小时前
经典算法:最长上升子序列(LIS)深度解析 C++ 实现
开发语言·c++·算法
2401_892070986 小时前
链栈(链式栈) 超详细实现(C 语言 + 逐行精讲)
c语言·数据结构·链栈
不爱吃炸鸡柳6 小时前
Python入门第一课:零基础认识Python + 环境搭建 + 基础语法精讲
开发语言·python
minji...6 小时前
Linux 线程同步与互斥(三) 生产者消费者模型,基于阻塞队列的生产者消费者模型的代码实现
linux·运维·服务器·开发语言·网络·c++·算法
Dxy12393102167 小时前
Python基于BERT的上下文纠错详解
开发语言·python·bert
语戚7 小时前
力扣 968. 监控二叉树 —— 贪心 & 树形 DP 双解法递归 + 非递归全解(Java 实现)
java·算法·leetcode·贪心算法·动态规划·力扣·
skywalker_117 小时前
力扣hot100-7(接雨水),8(无重复字符的最长子串)
算法·leetcode·职场和发展
SiYuanFeng8 小时前
Colab复现 NanoChat:从 Tokenizer(CPU)、Base Train(CPU) 到 SFT(GPU) 的完整踩坑实录
python·colab