Universal Cup Judging System

Universal Cup

実行時間制限: 3.0 s メモリ制限: 512 MB 満点: 100 ハック可能 ✓
統計

$N$개의 정점과 $M$개의 무방향 간선으로 이루어진 그래프가 주어집니다. 각 간선 $i$는 통과 레이팅 $W_i$를 가지며 정점 $U_i$와 $V_i$를 연결합니다.

Bob은 간선을 이용해 한 정점에서 다른 정점으로 이동할 수 있습니다. Bob은 자신의 레이팅이 $W_i$ 이상일 때 그리고 그때에만 $i$번째 간선을 이용할 수 있습니다. 같은 간선을 원하는 만큼 여러 번 이용할 수 있으며 같은 정점도 원하는 만큼 여러 번 방문할 수 있습니다.

Bob이 정점 $x$에 위치할 때마다, 새로운 레이팅을 얻기 위해 두 가지 선택지를 사용할 수 있습니다:

  • 무료로 $A_x$만큼의 레이팅을 얻을 수 있습니다. 이 선택지는 여정 전체에서 단 한 번만 사용할 수 있습니다.
  • $C_x$개의 동전을 내고 $1$만큼의 레이팅을 얻을 수 있습니다. 이 선택지는 여정 내내 원하는 만큼 여러 번 사용할 수 있습니다.

Bob에게는 이제 $Q$개의 쿼리가 있습니다. 각 쿼리 $i$에 대해 다음 질문에 답하세요:

  • Bob의 초기 레이팅은 $R_i$이고 현재 정점 $S_i$에 있습니다. 그는 정점 $T_i$에 도달하려고 합니다. 이를 위해 필요한 최소 동전의 개수는 얼마입니까?

동전이 무한히 많더라도 정점 $T_i$에 도달할 수 없다면 $-1$을 출력하세요.

입력

  • 첫 번째 줄에는 테스트 케이스의 수를 나타내는 정수 $T$ ($1 \le T \le 100$)가 주어집니다.
  • 그다음 각 테스트 케이스에 대해:
    • 첫 번째 줄에는 공백으로 구분된 세 정수 $N, M, Q$ ($1 \le N, M, Q \le 5 \cdot 10^5$)가 주어집니다.
    • 두 번째 줄에는 공백으로 구분된 $N$개의 정수 $A_1, A_2, \dots, A_N$ ($1 \le A_i \le 10^6$)이 주어집니다.
    • 세 번째 줄에는 공백으로 구분된 $N$개의 정수 $C_1, C_2, \dots, C_N$ ($1 \le C_i \le 10^6$)이 주어집니다.
    • 다음 $M$개의 줄에는 각각 공백으로 구분된 세 정수 $U_i, V_i, W_i$ ($1 \le U_i, V_i \le N; 1 \le W_i \le 10^{12}$)가 주어집니다.
    • 다음 $Q$개의 줄에는 각각 공백으로 구분된 세 정수 $S_i, T_i, R_i$ ($1 \le S_i, T_i \le N; 1 \le R_i \le 10^{12}$)가 주어집니다.

모든 테스트 케이스에 대해 $N$의 합은 $5 \cdot 10^5$을 초과하지 않음이 보장됩니다.

모든 테스트 케이스에 대해 $M$의 합은 $5 \cdot 10^5$을 초과하지 않음이 보장됩니다.

모든 테스트 케이스에 대해 $Q$의 합은 $5 \cdot 10^5$을 초과하지 않음이 보장됩니다.

출력

각 테스트 케이스마다 $Q$개의 줄에 걸쳐 각 쿼리에 대한 답을 하나의 정수로 출력합니다.

예제

예제 입력 1

1
5 5 4
5 2 4 3 10
1 2 3 4 5
3 3 10
1 2 5
3 4 7
1 3 13
2 5 21
4 5 3
2 2 4
1 4 2
5 2 10

예제 출력 1

11
0
4
5

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.