当前位置:网站首页>leetcode:1314. 矩阵区域和【二维前缀和模板】
leetcode:1314. 矩阵区域和【二维前缀和模板】
2022-07-04 03:53:00 【白速龙王的回眸】

分析
二维前缀和模板
dp的时候多一行一列记录0方便统一式子
ac code
class Solution:
def matrixBlockSum(self, mat: List[List[int]], k: int) -> List[List[int]]:
# 二维前缀和
m, n = len(mat), len(mat[0])
# row and col 补充一行全0
dp = [[0] * (n + 1) for _ in range(m + 1)]
dp[1][1] = mat[0][0]
for j in range(2, n + 1):
dp[1][j] = mat[0][j - 1] + dp[1][j - 1]
for i in range(2, m + 1):
dp[i][1] = mat[i - 1][0] + dp[i - 1][1]
for i in range(2, m + 1):
for j in range(2, n + 1):
#print(i, j)
dp[i][j] = mat[i - 1][j - 1] + dp[i - 1][j] + dp[i][j - 1] - dp[i - 1][j - 1]
#print(dp)
res = [[0] * n for _ in range(m)]
for i in range(1, m + 1):
for j in range(1, n + 1):
left, right = max(i - k, 1), min(m, i + k)
up, down = max(j - k, 1), min(n, j + k)
res[i - 1][j - 1] = dp[right][down] + dp[left - 1][up - 1] - dp[left - 1][down] - dp[right][up - 1]
return res
总结
二维前缀和板子
边栏推荐
- 西部数据绿盘、蓝盘、黑盘、红盘和紫盘有什么区别
- R语言中如何查看已安装的R包
- 北漂程序员,月薪20K,一年攒15W,正常吗?
- 博朗与Virgil Abloh于2021年为纪念博朗品牌100周年而联合打造的“功能性艺术”将在博物馆展出Abloh作品期间首次亮相
- 微信脑力比拼答题小程序_支持流量主带最新题库文件
- Modstartblog modern personal blog system v5.2.0 source code download
- Evolution of MySQL database architecture
- 新手找陪驾要注意什么
- ModStartBlog 现代化个人博客系统 v5.2.0 源码下载
- 2021 RSC | Drug–target affinity prediction using graph neural network and contact maps
猜你喜欢
随机推荐
hbuildx中夜神模拟器的配置以及热更新
JS realizes the effect of text scrolling marquee
Three years of graduation, half a year of distance | community essay solicitation
How to add custom API objects in kubernetes (1)
Why use node
leetcode刷题:二叉树05(翻转二叉树)
Redis:有序集合zset类型数据操作命令
毕业设计:设计秒杀电商系统
How to add custom API objects in kubernetes (1)
架构实战营 - 第 6 期 模块九之毕业设计
Unity draws the trajectory of pinball and billiards
VIM add interval annotation correctly
2020 Bioinformatics | TransformerCPI
【愚公系列】2022年7月 Go教学课程 002-Go语言环境安装
[microservice openfeign] use openfeign to remotely call the file upload interface
RHCSA 04 - 进程管理
Common methods of threads
I.MX6U-ALPHA开发板(C语言版本LED驱动实验)
EIG在智利推出可再生能源平台Grupo Cerro
西部数据绿盘、蓝盘、黑盘、红盘和紫盘有什么区别







