#P005877. 忍者神龟

    ID: 5877 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: 3 上传者: 标签>24-9-C组月赛T2最短路基础图论普及/提高−

忍者神龟

题目描述

在一个充满危险的城市地图上,忍者神龟们为了证明自己的实力,接受了导师的挑战。

城市中有 NN 个地点,地点之间有 MM 条单向道路,每条道路上都有 一个 强大的敌人守护。第 ii 条道路上敌人的战斗力为 PiP_i

现在有 QQ 个挑战任务,每个任务要求一只神龟从某个地点 SiS_i 出发,到达目标地点 EiE_i。神龟们希望找到一条能到达目标地点的路径,并且在所有可行路径中,遇到的战斗力最强的敌人尽可能弱。

你的任务是帮助神龟们计算出,每个任务中所有可行路径上遇到的最强敌人的最小战斗力。如果无法到达目标地点,输出 -1

输入格式

第 1 行,读入三个整数 N,M,QN, M, Q,分别表示地点数、道路数和任务数。

接下来 MM 行,每行包含三个整数 Ui,Vi,PiU_i, V_i, P_i,表示从地点 UiU_i 到地点 ViV_i 的一条单向道路,以及这条道路上敌人的战斗力 PiP_i

接下来 QQ 行:每行包含两个整数 Si,EiS_i, E_i,表示第 ii 个挑战任务的起点和终点。

输出格式

对于每个挑战任务,输出一个整数,表示该任务中所有可行路径上战斗力最强的敌人的最小值。如果无法从 SiS_i 到达 EiE_i,输出 -1

样例

输入

5 6 4
1 2 10
1 3 20
2 3 30
3 4 35
4 5 20
3 5 50
1 3
3 5
1 5
5 3

输出

20
35
35
-1

数据范围

对于 20%20\% 的数据,满足 1N501 \le N \le 501M1001 \le M \le 1001Q1001 \le Q \le 100

对于 100%100\% 的数据,满足 1N3001 \le N \le 3001M25,0001 \le M \le 25,0001Pi1,000,0001 \le P_i \le 1,000,0001Q40,0001 \le Q \le 40,0001Si,EiN1 \le S_i, E_i \le N