시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
4 초 | 1024 MB | 74 | 29 | 26 | 37.681% |
There are $N$ cities in JOI Kingdom, numbered from $1$ to $N$. There are $N -1$ roads in JOI Kingdom, numbered from $1$ to $N - 1$. The road $i$ ($1 ≤ i ≤ N - 1$) connects the city $A_i$ and the city $B_i$ bi-directionally. It is possible to travel from any city to any other city by passing through some of the roads.
There are checkpoints on some of the roads in JOI Kingdom. There are $M$ checkpoints, numbered from $1$ to $M$. The checkpoint $j$ ($1 ≤ j ≤ M$) is located on the road $P_j$. In order to pass through it, you need to pay either one gold coin or $C_j$ silver coins.
There are $Q$ citizens in JOI Kingdom, numbered from $1$ to $Q$. The citizen $k$ ($1 ≤ k ≤ Q$) has $X_k$ gold coins and $Y_k$ silver coins, and wants to travel from the city $S_k$ to the city $T_k$. Since gold coins are valuable, all the citizens want to keep as many gold coins as possible.
Write a program which, given information of the cities, the roads, the checkpoints, and the citizens in JOI Kingdom, for each $k$ ($1 ≤ k ≤ Q$), determines whether it is possible for the citizen $k$ to travel from the city $S_k$ to the city $T_k$, and, if it is possible, calculates the maximum possible number of gold coins the citizen $k$ can keep.
Read the following data from the standard input.
$N$ $M$ $Q$
$A_1$ $B_1$
$A_2$ $B_2$
$\vdots$
$A_{N-1}$ $B_{N-1}$
$P_1$ $C_1$
$P_2$ $C_2$
$\vdots$
$P_M$ $C_M$
$S_1$ $T_1$ $X_1$ $Y_1$
$S_2$ $T_2$ $X_2$ $Y_2$
$\vdots$
$S_Q$ $T_Q$ $X_Q$ $Y_Q$
Write $Q$ lines to the standard output. In the $k$-th line ($1 ≤ k ≤ Q$), if the citizen $k$ can travel from the city $S_k$ to the city $T_k$, output the maximum possible number of gold coins the citizen $k$ can keep. Otherwise, output $-1$ in the $k$-th line.
번호 | 배점 | 제한 |
---|---|---|
1 | 10 | $N ≤ 2\,000$, $M ≤ 2\,000$, $Q ≤ 2\,000$. |
2 | 28 | $C_1 = C_2 = \cdots = C_M$. |
3 | 30 | $A_i = i$, $B_i = i + 1$ ($1 ≤ i ≤ N - 1$). |
4 | 32 | No additional constraints. |
5 4 3 1 2 1 3 2 4 2 5 2 9 2 4 3 5 4 7 3 4 2 11 5 3 4 5 2 3 1 1
1 2 -1
The citizen $1$ can travel from the city $3$ to the city $4$ as follows. After the travel, the citizen $1$ keeps one gold coin.
Since it is impossible for the citizen $1$ to travel by finally keeping more than or equal to $2$ gold coins, output $1$ in the first line.
The citizen $2$ can travel from the city $5$ to the city $3$ as follows. After the travel, the citizen $2$ keeps two gold coins.
Since it is impossible for the citizen $2$ to travel by finally keeping more than or equal to $3$ gold coins, output $2$ in the second line.
Since it is impossible for the citizen $3$ to travel from the city $2$ to the city $3$, output $-1$ in the third line.
This sample input satisfies the constraints of Subtasks 1, 4.
10 7 9 1 8 6 3 5 9 7 9 3 1 3 4 10 1 2 6 5 6 9 4 7 4 7 4 2 4 7 4 7 4 1 4 8 6 5 3 3 9 8 0 4 7 6 15 7 4 9 3 6 4 8 0 9 10 5 16 5 3 2 4 2 8 4 3 6 1 3 3
3 6 6 7 7 3 1 2 2
This sample input satisfies the constraints of Subtasks 1, 2, 4.
8 7 11 1 2 2 3 3 4 4 5 5 6 6 7 7 8 4 4 3 7 2 10 5 2 4 1 4 4 5 6 6 3 7 69 7 1 5 55 3 1 6 8 8 2 5 45 4 6 4 45 6 1 3 33 2 1 0 19 3 7 2 31 7 1 2 31 7 2 4 58 8 3 5 63
7 5 5 5 4 2 0 2 1 4 5
This sample input satisfies the constraints of Subtasks 1, 3, 4.
8 7 11 1 8 1 4 3 1 3 6 6 7 2 1 5 2 5 5 5 8 4 7 6 6 4 1 6 4 1 7 4 7 2 18 2 4 5 1 4 2 1 32 1 5 7 21 2 5 0 50 8 4 4 33 1 7 6 16 4 8 7 18 1 2 8 13 5 4 10 42 7 1 6 40
1 3 1 7 0 4 5 7 8 10 6
This sample input satisfies the constraints of Subtasks 1, 4.