• LeetCode 598. Range Addition II


    You are given an m x n matrix M initialized with all 0's and an array of operations ops, where ops[i] = [ai, bi] means M[x][y] should be incremented by one for all 0 <= x < ai and 0 <= y < bi.

    Count and return the number of maximum integers in the matrix after performing all the operations.

    Example 1:

    Input: m = 3, n = 3, ops = [[2,2],[3,3]]
    Output: 4
    Explanation: The maximum integer in M is 2, and there are four of it in M. So return 4.
    

    Example 2:

    Input: m = 3, n = 3, ops = [[2,2],[3,3],[3,3],[3,3],[2,2],[3,3],[3,3],[3,3],[2,2],[3,3],[3,3],[3,3]]
    Output: 4
    

    Example 3:

    Input: m = 3, n = 3, ops = []
    Output: 9
    

    Constraints:

    • 1 <= m, n <= 4 * 104
    • 0 <= ops.length <= 104
    • ops[i].length == 2
    • 1 <= ai <= m
    • 1 <= bi <= n

    就,有点脑筋急转弯的感觉,主要难度在于理解题意……就是题目给出一系列ops[][],每次要更新ops[i] = (a, b)范围内的矩阵的数字,求最后有多少个数字是每次都被更新了的。那么很显然每次只会更新左上角的数字,也就是求最小的ops[i][0]和ops[i][1],然后把他们相乘就是最后结果。

    Runtime: 3 ms, faster than 26.67% of Java online submissions for Range Addition II.

    Memory Usage: 44.8 MB, less than 18.59% of Java online submissions for Range Addition II.

    1. class Solution {
    2. public int maxCount(int m, int n, int[][] ops) {
    3. int row = m;
    4. int col = n;
    5. for (int[] op : ops) {
    6. row = Math.min(row, op[0]);
    7. col = Math.min(col, op[1]);
    8. }
    9. return row * col;
    10. }
    11. }

  • 相关阅读:
    大模型微调技术LoRA与QLoRA
    NAND闪存市场格局或将发生变化
    LiberOJ_10060
    《机器学习》李宏毅P10卷积神经网络
    GPT引领前沿与应用突破之GPT4科研实践技术与AI绘图
    软件运维面试题
    JDK8内存溢出注意事项
    float 浮动
    Livox SLAM(带LIO+闭环检测优化)
    最新版本 Stable Diffusion 开源 AI 绘画工具之图生图进阶篇
  • 原文地址:https://blog.csdn.net/qq_37333947/article/details/127653259