Range Addition II(leetcode)
2017-12-19 15:21
423 查看
Range Addition II
Range Addition II题目
解决
题目
leetcode题目Given an
m * nmatrix
Minitialized with all 0’s and several update operations.
Operations are represented by a 2D array, and each operation is represented by an array with two positive integers
aand
b, which means
M[i][j]should be added by one for all
0 <= i < aand
0 <= j < b.
You need to count and return the number of maximum integers in the matrix after performing all the operations.
Example 1:
Input: m = 3, n = 3 operations = [[2,2],[3,3]] Output: 4 Explanation: Initially, M = [[0, 0, 0], [0, 0, 0], [0, 0, 0]] After performing [2,2], M = [[1, 1, 0], [1, 1, 0], [0, 0, 0]] After performing [3,3], M = [[2, 2, 1], [2, 2, 1], [1, 1, 1]] So the maximum integer in M is 2, and there are four of it in M. So return 4.
Note:
The range of m and n is [1,40000].
The range of a is [1,m], and the range of b is [1,n].
The range of operations size won’t exceed 10,000.
解决
这里我们需要得到每次操作的最小覆盖。因为变化都是从0开始到预定的数值,这样我们只需遍历给定的ops中的每组数对
(a, b),分别取
a和
b中最小的数,其结果为
a * b。
class Solution { public: int maxCount(int m, int n, vector<vector<int>>& ops) { int a = m; int b = n; for (int i = 0; i < ops.size(); i++) { a = min(a, ops[i][0]); b = min(b, ops[i][1]); } return a * b; } };
相关文章推荐
- LeetCode 598. Range Addition II (范围加法之二)
- LeetCode Range Addition II
- python--leetcode598. Range Addition II
- [LeetCode] Range Addition II 范围相加之二
- leetcode[Range Addition II]
- 算法分析与设计——LeetCode Problem.598 Range Addition II
- leetcode 598. Range Addition II
- leetcode 598. Range Addition II 范围内的操作 + 遍历即可
- Leetcode 598 Range Addition II
- [leetcode]: 598. Range Addition II
- 598. Range Addition II
- 598. Range Addition II
- Range Addition II
- LeetCode Range Addition
- LC-Range Addition II
- Math-598-Range Addition II
- RangeAdditionII、ConstructtheRectangle、ExcelSheetColumnNumber
- 598. Range Addition II
- Range Addition II问题及解法
- 598. Range Addition II