1314--力扣情人节特别篇

给你一个 m x n 的矩阵 mat 和一个整数 k ,请你返回一个矩阵 answer ,其中每个 answer[i][j] 是所有满足下述条件的元素 mat[r][c] 的和:

  • i - k <= r <= i + k,
  • j - k <= c <= j + k
  • (r, c) 在矩阵内。

示例 1:

复制代码
输入:mat = [[1,2,3],[4,5,6],[7,8,9]], k = 1
输出:[[12,21,16],[27,45,33],[24,39,28]]

示例 2:

复制代码
输入:mat = [[1,2,3],[4,5,6],[7,8,9]], k = 2
输出:[[45,45,45],[45,45,45],[45,45,45]]

提示:

  • m == mat.length
  • n == mat[i].length
  • 1 <= m, n, k <= 100
  • 1 <= mat[i][j] <= 100

class Solution {

public int[][] matrixBlockSum(int[][] mat, int K) {

int[][] res = new int[mat.length][mat[0].length];

for (int i = 0; i < mat.length; i++) {

for (int j = 0; j < mat[0].length; j++) {

int sum = 0;

for (int r = Math.max(i - K, 0); r <= Math.min(i + K, mat.length - 1); r++) {

for (int c = Math.max(j - K, 0); c <= Math.min(j + K, mat[0].length - 1); c++) {

sum += mat[r][c];

}

}

res[i][j] = sum;

}

}

return res;

}

}

相关推荐
朱剑君几秒前
第六天——贪心算法——字符串分隔
算法
荔枝吻5 分钟前
【抽丝剥茧知识讲解】引入mybtis-plus后,mapper实现方式
java·sql·mybatis
在未来等你10 分钟前
互联网大厂Java求职面试:构建高并发直播平台的架构设计与优化
java·spring boot·微服务·kubernetes·高并发·分布式系统·直播平台
小刘不想改BUG19 分钟前
LeetCode LCR 015. 找到字符串中所有字母异位词 (Java)
linux·算法·leetcode
灵典33625 分钟前
数据结构入门-二叉树的层序遍历
数据结构·算法
范纹杉想快点毕业29 分钟前
以项目的方式学QT开发(三)——超详细讲解(120000多字详细讲解,涵盖qt大量知识)逐步更新!
c语言·开发语言·c++·qt·mysql·算法·命令模式
补三补四31 分钟前
随机森林(Random Forest)
人工智能·科技·算法·随机森林·机器学习
轮到我狗叫了34 分钟前
力扣.1471数组的k个最强值,力扣.1471数组的k个最强值力扣1576.替换所有的问号力扣1419.数青蛙编辑力扣300.最长递增子序列
java·数据结构·算法
秋野酱44 分钟前
基于SpringBoot的家政服务系统设计与实现(源码+文档+部署讲解)
java·spring boot·后端
趁你还年轻_1 小时前
常用的Java工具库
java