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

代码实现

class Solution {public:int maxSumSubmatrix(vector<vector<int>>& matrix, int k) {int m = matrix.size();int n = matrix[0].size();int dp[101][101];memset(dp, 0, sizeof(dp));for (int i = 1; i <= m; i++) {for (int j = 1; j <= n; j++) {dp[i][j] = dp[i - 1][j] + dp[i][j - 1] - dp[i - 1][j - 1] +matrix[i - 1][j - 1];//cout << dp[i][j] << " ";}//cout << endl;}int ans = INT_MIN;int i, j ,i1, j1, tmp;for (i = 1; i <= m; i++) {for (j = 1; j <= n; j++) {for (i1 = i; i1 <= m; i1++) {for (j1= j; j1 <= n; j1++) {tmp = dp[i1][j1] - dp[i - 1][j1] - dp[i1][j - 1]+ dp[i - 1][j - 1];//cout<<i<<" "<<j<<" "<<i1<<" "<<j1<<" "<<tmp<<endl;if (tmp <= k) ans = max(ans, tmp);}}}}return ans;}
};

365天挑战LeetCode1000题——Day 117 矩形区域不超过 K 的最大数值和相关推荐

  1. LeetCode 363. 矩形区域不超过 K 的最大数值和(DP+set二分查找)

    1. 题目 给定一个非空二维矩阵 matrix 和一个整数 k,找到这个矩阵内部不大于 k 的最大矩形和. 示例: 输入: matrix = [[1,0,1],[0,-2,3]], k = 2 输出: ...

  2. [C++Rust]LeetCode No.363 矩形区域不超过 K 的最大数值和

    原贴地址:http://blog.leanote.com/post/dawnmagnet/363 题目 给你一个 m x n 的矩阵 matrix 和一个整数 k ,找出并返回矩阵内部矩形区域的不超过 ...

  3. 【数据结构与算法】之深入解析“矩形区域不超过K的最大数值和”的求解思路与算法示例

    一.题目要求 给你一个 m x n 的矩阵 matrix 和一个整数 k,找出并返回矩阵内部矩形区域的不超过 k 的最大数值和. 题目数据保证总会存在一个数值和不超过 k 的矩形区域. 示例 1: 输 ...

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

    给你一个 m x n 的矩阵 matrix 和一个整数 k ,找出并返回矩阵内部矩形区域的不超过 k 的最大数值和. 题目数据保证总会存在一个数值和不超过 k 的矩形区域. 示例 1: 输入:matr ...

  5. 365天挑战LeetCode1000题——Day 117 数位DP II

    数位DP模板 # i: 第i位到最后一位的dp状态-- # mask: 可选择的数字-- # isLimit: 是否限制该位大小,如果没有,那么可以选择0-9,否则需要计算上界s[0] - 'i' # ...

  6. 365天挑战LeetCode1000题——Day 117 数位DP I

    902. 最大为 N 的数字组合 代码实现 class Solution {private:int solve(stack<int>& st, vector<int>& ...

  7. leetcode 363. Max Sum of Rectangle No Larger Than K | 363. 矩形区域不超过 K 的最大数值和(前缀和,图文详解)

    题目 https://leetcode.com/problems/max-sum-of-rectangle-no-larger-than-k/ 题解 本题利用 前缀和 的思想. 首先,分别建立横向.纵 ...

  8. 365天挑战LeetCode1000题——Day 126 单调栈模板 500题纪念

    用时126天,完成500题,平均4题/天,照这个速率,我还需要四个月完成1000题挑战. 单调栈模板 class Solution {public:vector<int> nextGrea ...

  9. 365天挑战LeetCode1000题——Day 260 800题

    时过但境还没迁,一晃眼过去了4个月,在同样的位置发了博客. 今天完成了第八百道题,然后距离我的365天千题计划,还剩下100天左右,每天再保持两题的刷题量,就能完成我一年前定下的目标了.这也再次证明了 ...

最新文章

  1. 穹顶下业务流程管理失位
  2. 用Eclipse进行C/C++开发
  3. python的序列化和反序列化
  4. 二叉索引树 -- 区间信息的维护与查询
  5. 面试必考的网络协议相关题目应该如何回答
  6. centos 安装tomcat_简单介绍Linux配置mysql,tomcat,Nginx 开机自启动的几个方式
  7. 入夏多吃这些“杀菌菜”
  8. 楷体任务用Ant来构建你的项目
  9. 常量数组 python_python数据科学系列:numpy入门详解教程
  10. ZZULIOJ 1090: 整数幂(多实例测试)
  11. 给下拉框加上可输入查询特性,包括中文与拼音首字母
  12. linux p 参数,tar的-p参数解决方案
  13. 说说Javascript
  14. ISO 审批通过 Ada 2012 语言标准
  15. html5 css练习 定位布局
  16. 超详细Python进行信用评分卡建模【kaggle的give me some credit数据集】【风控建模】
  17. C# BackgroundWorker
  18. EXCEL中如何撤销工作表保护
  19. android源码中国地图,Android 绘制中国地图
  20. excel小写转大写公式_英文字母大小写的转换

热门文章

  1. 百度之星2014-2016资格赛试题及解答
  2. 100行matlab,中国大学MOOC: Matlab中可以产生100行100列元素全是1的正确的命令是() 答案:ones(100)...
  3. 与MySQL的第一次亲密接触
  4. 福州大学计算机考研好考,福州大学数学考研好不好考,考研考哪些?福大数学考研考情分析。...
  5. 一文读懂如何对混合型数据做聚类分析!
  6. https怎么防止流量劫持
  7. Navisworks动画制作总结
  8. springboot2.x 的 RedisCacheManager设置缓存失效时间
  9. Unity(四十六):遮挡剔除
  10. Android通知图库更新