Class Solution
-
- All Implemented Interfaces:
public final class Solution3244 - Shortest Distance After Road Addition Queries II.
Hard
You are given an integer
nand a 2D integer arrayqueries.There are
ncities numbered from0ton - 1. Initially, there is a unidirectional road from cityito cityi + 1for all0 <= i < n - 1.<code>queriesi = u<sub>i</sub>, v<sub>i</sub></code> represents the addition of a new unidirectional road from city <code>u<sub>i</sub></code> to city <code>v<sub>i</sub></code>. After each query, you need to find the length of the shortest path from city
0to cityn - 1.There are no two queries such that
queries[i][0] < queries[j][0] < queries[i][1] < queries[j][1].Return an array
answerwhere for eachiin the range[0, queries.length - 1],answer[i]is the length of the shortest path from city0to cityn - 1after processing the firsti + 1queries.Example 1:
Input: n = 5, queries = \[\[2,4],0,2,0,4]
Output: 3,2,1
Explanation:
After the addition of the road from 2 to 4, the length of the shortest path from 0 to 4 is 3.
After the addition of the road from 0 to 2, the length of the shortest path from 0 to 4 is 2.
After the addition of the road from 0 to 4, the length of the shortest path from 0 to 4 is 1.
Example 2:
Input: n = 4, queries = \[\[0,3],0,2]
Output: 1,1
Explanation:
After the addition of the road from 0 to 3, the length of the shortest path from 0 to 3 is 1.
After the addition of the road from 0 to 2, the length of the shortest path remains 1.
Constraints:
<code>3 <= n <= 10<sup>5</sup></code>
<code>1 <= queries.length <= 10<sup>5</sup></code>
queries[i].length == 20 <= queries[i][0] < queries[i][1] < n1 < queries[i][1] - queries[i][0]There are no repeated roads among the queries.
There are no two queries such that
i != jandqueries[i][0] < queries[j][0] < queries[i][1] < queries[j][1].
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
Modifier and Type Method Description final IntArrayshortestDistanceAfterQueries(Integer n, Array<IntArray> queries)-
-
Method Detail
-
shortestDistanceAfterQueries
final IntArray shortestDistanceAfterQueries(Integer n, Array<IntArray> queries)
-
-
-
-