# [LeetCode] Range Addition II 范围相加之二

Given an m * n matrix M initialized 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 a and b, which means M[i][j] should be added by one for all 0 <= i < a and 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:

1. The range of m and n is [1,40000].
2. The range of a is [1,m], and the range of b is [1,n].
3. The range of operations size won't exceed 10,000.

public:
int maxCount(int m, int n, vector<vector<int>>& ops) {
if (ops.empty() || ops[0].empty()) return m * n;
priority_queue<int> r, c;
for (auto op : ops) {
r.push(-op[0]);
c.push(-op[1]);
}
return r.top() * c.top();
}
};

public:
int maxCount(int m, int n, vector<vector<int>>& ops) {
for (auto op : ops) {
m = min(m, op[0]);
n = min(n, op[1]);
}
return m * n;
}
};

https://discuss.leetcode.com/topic/90540/c-java-clean-code

，如需转载请自行联系原博主。

LeetCode 307. Range Sum Query - Mutable
update(i, val) 函数可以通过将下标为 i 的数值更新为 val，从而对数列进行修改。
88 0
LeetCode 304. Range Sum Query 2D - Immutable

90 0
|

LeetCode 303. Range Sum Query - Immutable

79 0
LeetCode 201. Bitwise AND of Numbers Range

61 0
|

LeetCode 307 Range Sum Query - Mutable（范围和查询-可变）

914 0
|

LeetCode 304 Range Sum Query 2D - Immutable（范围求和2D - 不可变）

908 0
LeetCode - 34. Search for a Range
34. Search for a Range  Problem's Link  ---------------------------------------------------------------------------- Mean:  给定一个有序数组和一个数k，求k在这个数组中的起始下标和结束下标.
883 0
|

LeetCode 303 Range Sum Query - Immutable（范围总和查询-永久不变）（*）

789 0