Class Solution
-
- All Implemented Interfaces:
public final class Solution1840 - Maximum Building Height\.
Hard
You want to build
nnew buildings in a city. The new buildings will be built in a line and are labeled from1ton.However, there are city restrictions on the heights of the new buildings:
The height of each building must be a non-negative integer.
The height of the first building must be
0.The height difference between any two adjacent buildings cannot exceed
1.
Additionally, there are city restrictions on the maximum height of specific buildings. These restrictions are given as a 2D integer array
restrictionswhere <code>restrictionsi = id<sub>i</sub>, maxHeight<sub>i</sub></code> indicates that building <code>id<sub>i</sub></code> must have a height less than or equal to <code>maxHeight<sub>i</sub></code>.It is guaranteed that each building will appear at most once in
restrictions, and building1will not be inrestrictions.Return the maximum possible height of the tallest building.
Example 1:
Input: n = 5, restrictions = \[\[2,1],4,1]
Output: 2
Explanation: The green area in the image indicates the maximum allowed height for each building. We can build the buildings with heights 0,1,2,1,2, and the tallest building has a height of 2.
Example 2:
Input: n = 6, restrictions = []
Output: 5
Explanation: The green area in the image indicates the maximum allowed height for each building. We can build the buildings with heights 0,1,2,3,4,5, and the tallest building has a height of 5.
Example 3:
Input: n = 10, restrictions = \[\[5,3],2,5,7,4,10,3]
Output: 5
Explanation: The green area in the image indicates the maximum allowed height for each building. We can build the buildings with heights 0,1,2,3,3,4,4,5,4,3, and the tallest building has a height of 5.
Constraints:
<code>2 <= n <= 10<sup>9</sup></code>
<code>0 <= restrictions.length <= min(n - 1, 10<sup>5</sup>)</code>
<code>2 <= id<sub>i</sub><= n</code>
<code>id<sub>i</sub></code> is unique.
<code>0 <= maxHeight<sub>i</sub><= 10<sup>9</sup></code>