363. 矩形区域不超过 K 的最大数值和(C语言实现)

本文介绍了如何解决LeetCode的363题,通过暴力枚举、二维前缀和、固定边界搜索结合动态规划和二分查找等方法,优化时间复杂度,寻找矩阵内矩形区域的最大和不超过K的解决方案。
摘要由CSDN通过智能技术生成

363. 矩形区域不超过 K 的最大数值和

本题涉及内容:一/二维前缀和问题、降维问题、暴力枚举问题、dp问题、二分查找问题

题干

给你一个 m ∗ n m * n mn 的矩阵 m a t r i x matrix matrix 和一个整数 k k k ,找出并返回矩阵内部矩形区域的不超过 k k k 的最大数值和。

题目数据保证总会存在一个数值和不超过 k k k 的矩形区域。

示例1

img

输入:matrix = [[1,0,1],[0,-2,3]], k = 2
输出:2
解释:蓝色边框圈出来的矩形区域 [[0, 1], [-2, 3]] 的数值和是 2,且 2 是不超过 k 的最大数字(k = 2)。

数据范围

  • 1 ≤ R o w S i z e , C o l S i z e ≤ 100 1\le RowSize,ColSize\le 100 1RowSize,ColSize100
  • 1 ≤ m a t r i x [ i ] [ j ] ≤ 100 1\le matrix[i][j]\le 100 1matrix[i][j]100
  • − 1 0 5 ≤ k ≤ 1 0 5 -10^5\le k\le 10^5 105k105

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/max-sum-of-rectangle-no-larger-than-k
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

声明

下方代码默认数据已经读入在matrix二维数组,然后主函数调用Max_Sum_Sub_Matrix这个子函数返回result

方法1-暴力枚举+简单dp

时间复杂度,dp时间复杂度为指数级增长,并且Max_Sum_Sub_Matrix循环复杂度为 O ( n 4 ) O(n^4) O(n4),两者相乘,嘶~

都不敢上交到leetcode😂

#define Max(a,b) (a)>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值