【二维区域和检索-矩阵不可变】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]
    
相关推荐
晔子yy2 分钟前
【AI编程时代】:RAG的不同检索策略
python·ai编程
无心水4 分钟前
Python时间处理通关指南:datetime/arrow/pandas实战
开发语言·人工智能·python·pandas·datetime·arrow·金融科技
2301_810160955 分钟前
C++与Docker集成开发
开发语言·c++·算法
_李小白5 分钟前
【OSG学习笔记】Day 4: 矩阵变换
笔记·学习·矩阵·图形渲染
CSDN_Colinw7 分钟前
C++模块化设计原则
开发语言·c++·算法
AI视觉网奇7 分钟前
block_sparse_attn 安装
python
草原上唱山歌9 分钟前
如何理解C语言中的指针?
c语言·开发语言·数据结构
MicroTech20259 分钟前
微算法科技(NASDAQ: MLGO)使用机器学习保障量子安全下区块链高效可用
科技·算法·机器学习
m0_662577979 分钟前
C++中的模板方法模式
开发语言·c++·算法
We་ct11 分钟前
LeetCode 33. 搜索旋转排序数组:O(log n)二分查找
前端·算法·leetcode·typescript·个人开发·二分·数组