Java | Leetcode Java题解之第363题矩形区域不超过K的最大数值和

题目:

题解:

java 复制代码
class Solution {
    public int maxSumSubmatrix(int[][] matrix, int k) {
        int ans = Integer.MIN_VALUE;
        int m = matrix.length, n = matrix[0].length;
        for (int i = 0; i < m; ++i) { // 枚举上边界
            int[] sum = new int[n];
            for (int j = i; j < m; ++j) { // 枚举下边界
                for (int c = 0; c < n; ++c) {
                    sum[c] += matrix[j][c]; // 更新每列的元素和
                }
                TreeSet<Integer> sumSet = new TreeSet<Integer>();
                sumSet.add(0);
                int s = 0;
                for (int v : sum) {
                    s += v;
                    Integer ceil = sumSet.ceiling(s - k);
                    if (ceil != null) {
                        ans = Math.max(ans, s - ceil);
                    }
                    sumSet.add(s);
                }
            }
        }
        return ans;
    }
}
相关推荐
云烟成雨TD9 分钟前
Spring AI Alibaba 1.x 系列【4】ReAct 范式与 ReactAgent 核心设计
java·人工智能·spring
「QT(C++)开发工程师」36 分钟前
C++11三大核心特性深度解析:类型特征、时间库与原子操作
java·c++·算法
乐分启航42 分钟前
SliMamba:十余K参数量刷新SOTA!高光谱分类的“降维打击“来了
java·人工智能·深度学习·算法·机器学习·分类·数据挖掘
yoothey1 小时前
Java字节流与字符流核心笔记(问答+考点复盘)
java·开发语言·笔记
black方块cxy2 小时前
实现一个输入框多个ip以逗号分隔最多20组,且ip不能重复
java·服务器·前端
23.3 小时前
【Java】char字符类型的UTF-16编码解析
java·开发语言·面试
怒放吧德德3 小时前
Spring Boot实战:InfluxDB 2.x简单教程
java·spring boot·后端
indexsunny3 小时前
互联网大厂Java面试实战:核心技术与业务场景深度解析
java·spring boot·hibernate·security·microservices·interview
是小蟹呀^3 小时前
Java中的继承:从入门到精通
java·继承
bearpping3 小时前
怎么下载安装yarn
java