文章目录

  • 题目
  • 题解
    • 解法一:暴力模拟
    • 解法二:二维前缀和

题目

题链:1314. 矩阵区域和

题解

解法一:暴力模拟

直接根据题意,模拟即可,时间复杂度O(n^4)

class Solution {public int[][] matrixBlockSum(int[][] mat, int k) {int m = mat.length;int n = mat[0].length;int[][] res = new int[m][n];for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {int r1 = i - k >= 0 ? i-k:0;int r2 = i + k < m ? i+k:m;int c1 = j - k >= 0 ? j-k:0;int c2 = j + k < n ? j+k:n-1;for (int l = r1; l <= r2; l++) {for (int o = c1; o <= c2; o++) {res[i][j] += mat[l][o];}}}}return res;}
}

解法二:二维前缀和

大佬详细题解:【类前缀和 + 动态规划】画图说明

class Solution02 {public int[][] matrixBlockSum(int[][] mat, int k) {int m = mat.length,n = mat[0].length;int[][] temp = new int[m][n];for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {temp[i][j] = getPre(temp,i-1,j) + getPre(temp,i,j-1)- getPre(temp,i-1,j-1) + mat[i][j];}}int[][] res = new int[m][n];for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {res[i][j] = getTem(temp,i+k,j+k) - getTem(temp,i-k-1,j+k)- getTem(temp,i+k,j-k-1) + getTem(temp,i-k-1,j-k-1);}}return res;}private int getPre(int[][] arr,int r,int l){if (r == 0 || l == 0){return 0;}return arr[r][l];}private int getTem(int[][] arr,int r,int l){if (r == 0 || l == 0){return 0;}r = r >= arr.length ? arr.length - 1 : r;l = l >= arr[0].length ? arr[0].length - 1: l;return arr[r][l];}
}

(每日一题 day 003 - 二维前缀和+动态规划) 1314. 矩阵区域和相关推荐

  1. 激光导弹Gundam Unicorn(二维前缀和and二维差分)

    激光炸弹和Gundam Unicorn是二维前缀和和二位差分的综合应用. 首先是一二维差分,前缀和的模板前缀和与差分 图文并茂 超级详细整理(全网最通俗易懂)_林深不见鹿 的博客-CSDN博客_前缀和 ...

  2. 【二维前缀和】304. 二维区域和检索 - 矩阵不可变

    目录 题目 前缀和解法(二维) 二维vector 定义 这道题是「303. 区域和检索 - 数组不可变」的进阶,第 303 题是在一维数组中做区域和检索,这道题是在二维矩阵中做区域和检索. 题目 30 ...

  3. 暑假每日算法学习打卡(十)----[HNOI2003]激光炸弹,「土」秘法地震(二维前缀和),Captcha Cracker【牛客】

    [HNOI2003]激光炸弹 题目描述  一种新型的激光炸弹,可以摧毁一个边长为R的正方形内的所有的目标. 现在地图上有n(N ≤ 10000)个目标,用整数Xi,Yi(其值在[0,5000])表示目 ...

  4. 【每日DP】day3 P1387 最大正方形(奇怪的DP增加了 / 二维前缀和)难度⭐⭐★

    奇怪的DP增加了 这道题,刚看见真是一脸懵逼,看了题解才明白. 本题中神奇的转移方程是: f[i][j]=min(min(f[i][j−1],f[i−1][j]),f[i−1][j−1])+1f[i] ...

  5. 力扣刷题笔记--304 二维区域和检索 - 矩阵不可变 前缀和

    304 二维区域和检索 - 矩阵不可变 作者:AC_OIer 链接:https://leetcode-cn.com/problems/range-sum-query-2d-immutable/solu ...

  6. 【题集】一维前缀和-二维前缀和-数星星问题-反复运行时如何降低时间复杂度

    目录 1前缀和 1.1一维前缀和 1.2二维前缀和 2.题目 2.1输入描述: 2.2输出描述: 2.3输入 2.4输出 3.题目理解 3.1思路 4.程序 4.1运行结果 1前缀和 1.1一维前缀和 ...

  7. 中石油训练赛 - Block(二维前缀和+思维)

    题目描述 Alice得到了一张由n×m个黑白像素点组成的图片,她想要压缩这张图片.压缩图片的过程如下: 1.首先,选择一个正整数k(k>1),将图片划分成若干个k×k的小块.如果n,m不能被k整 ...

  8. leetcode 304. Range Sum Query 2D - Immutable |304. 二维区域和检索 - 矩阵不可变(二维前缀和问题)

    题目 https://leetcode.com/problems/range-sum-query-2d-immutable/ 题解 本题是 medium 难度,二维前缀和问题.相似题目有: Easy: ...

  9. 【HDU - 1937 】Finding Seats(二维前缀和+尺取法)

    题干: A group of K friends is going to see a movie. However, they are too late to get good tickets, so ...

  10. Nowcoder farm ( 树状数组、二维前缀和、二维偏序 )

    题目链接 分析 : 最简单的想法当然就是去模拟 直接对每个施肥料的操作进行模拟.然后计算贡献 但是这显然会超时.这题需要换一个思维 对于一个土地(也就是二维平面上的一个点)的种类是 T' 如果它被操作 ...

最新文章

  1. c语言自定义char*函数返回值是乱码_[每日C语言」printf()函数的修饰符和返回值...
  2. 建立可扩展的silverlight应用框架 step-7 final
  3. 【错误记录】Google Play 上架报错 ( 您上传的 APK 没有经过 Zipalign 处理,请对 APK 运行 Zipalign 工具,然后重新上传。)
  4. Learn About Bundles and the Request Lifecycle——未完待续
  5. intro to cs with python_CS 105 – Intro to Computing Non-Tech Spring 2019
  6. 运算符的计算机制和原则
  7. SAP UI5 OData Json model name
  8. 定制Spring Data JPA存储库
  9. 计算机vf的讲解,计算机二级vf重点知识讲解.doc
  10. 内蒙古大学计算机组成原理难吗,内蒙古大学计算机组成原理期末练习0.doc
  11. [独家放送]Unity2019更新规划速览,将有官方的可视化编程!
  12. 其它 博客园 自己写的文章 标题含有小写字母 查看文章时 标题就变成大写的了...
  13. 二维 三维 向量vector 定义,初始化
  14. Vue.js 还是 React?你会选择哪一个?为什么?
  15. AIIA开发者大会百度飞桨及EasyDL专场:带你看五花八门的产业AI实践
  16. 大尺寸背光检测~Dalsa线阵相机资料
  17. 安全框架-SpringSecurity
  18. 【论文学习】《Generalized End-to-End Loss for Speaker Verification》
  19. CSDN官方力推的《用户社区》,值得你来逛逛
  20. 对“英语趣配音”学习软件的教学设计分析

热门文章

  1. ADO中最重要的对象有三个:Connection、Recordset和Command
  2. LANMP架构----------------------mysql(2)
  3. 4.微服务设计 --- 集成
  4. 2.PHP 扩展开始以及内核应用(1) --- PHP 变量在内核中的实现
  5. 3.TCP/IP 详解卷1 --- IP:网际协议
  6. 3.UNIX 环境高级编程--文件 IO
  7. 7. 开启 mysql remote access
  8. 9. JavaScript 事件参考手册
  9. css中的伪类与伪元素的区别
  10. [2019杭电多校第一场][hdu6578]Blank(dp)