编程语言
首页 > 编程语言> > 力扣 598范围求和 (寻找最小重合面积 java实现)

力扣 598范围求和 (寻找最小重合面积 java实现)

作者:互联网

在这里插入图片描述
在这里插入图片描述
    看完题目就知道这个题是寻找重复最多的矩形的大小,在ops数组里,最小的矩形就是重复次数的最多的。所以转化为求ops数组里面最小的矩形。
    我们现在的任务就是要求最小矩形的长宽,长宽都要考虑到给定的m,n的大小,要和他作比较看谁小,我刚开始想的是先让行和m作比较得到最小值temp再让temp和mina作比较,这就有点麻烦了,我看题解是直接将mina设置为m,minb设置为n,这样就少了我那一步temp,非常奈斯。
    接下来就是找mina和minb,题解写的也是很好的,直接一次性取一行数组,mina=min(mina,op[0]),minb=min(minb,op[1]),这样就能得到行最小,列最小的矩形,他们长宽的乘积就是最后的答案。

class Solution {
    public int maxCount(int m, int n, int[][] ops) {
        int mina = m, minb = n;
        for (int[] op : ops) {
            mina = Math.min(mina, op[0]);
            minb = Math.min(minb, op[1]);
        }
        return mina * minb;
    }
}

标签:java,min,int,598,minb,ops,力扣,mina,op
来源: https://blog.csdn.net/weixin_51656756/article/details/121188303