【二维区域和检索-矩阵不可变】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 小时前
Python包管理新纪元:uv
python·conda·pip·uv
有泽改之_5 小时前
leetcode146、OrderedDict与lru_cache
python·leetcode·链表
im_AMBER5 小时前
Leetcode 74 K 和数对的最大数目
数据结构·笔记·学习·算法·leetcode
是毛毛吧5 小时前
边打游戏边学Python的5个开源项目
python·开源·github·开源软件·pygame
t198751285 小时前
电力系统经典节点系统潮流计算MATLAB实现
人工智能·算法·matlab
断剑zou天涯5 小时前
【算法笔记】蓄水池算法
笔记·算法
三途河畔人5 小时前
Pytho基础语法_运算符
开发语言·python·入门
长安er5 小时前
LeetCode 206/92/25 链表翻转问题-“盒子-标签-纸条模型”
java·数据结构·算法·leetcode·链表·链表翻转
唯道行6 小时前
计算机图形学·23 Weiler-Athenton多边形裁剪算法
算法·计算机视觉·几何学·计算机图形学·opengl
CoderYanger6 小时前
动态规划算法-01背包问题:50.分割等和子集
java·算法·leetcode·动态规划·1024程序员节