#8. 修行

修行

【题目描述】

qo 感觉自己太弱了,于是准备去很远的地方进修,让自己变得更强。

qo 准备来到第八个大洲进行修行,第八个大洲由 nn 个城市和 mm 条道路构成,道路是双向的。到达第 ii 个城市时,qo 可以掌握该城市能学到的全部内容,并获得 aia_i 点能力提升,但因为在一个城市可以学会的内容有限,多次到达同一个城市不会多次提升能力。

第八个大洲对能力也有很严的要求,对于第 ii 条道路,只有能力大于等于 bib_i 的人才能经过。

qo 准备乘坐火箭去往第八个大洲,飞机可以降落在任意城市(即可以在任意城市开始进修),qo 想知道自己的能力最多可以成长为多少,所以 qo 提出了 QQ 次询问,第 ii 次询问为:当自己初始能力为 qiq_i 时,能力最多可以成长为多少。

【输入格式】

第一行三个整数 n,m,Qn, m, Q

接下来一行 nn 个非负整数,分别代表 a1a_1ana_n

接下来 mm 行,每行三个正整数,ui,vi,biu_i, v_i, b_i,表示城市 uiu_i 和城市 viv_i 之间有一条道路,限制为 bib_i

最后 QQ 行,每行一个非负整数 qiq_i

【输出格式】

QQ 行,每行一个整数表示答案。

【样例输入1】

2 1 1
10 10
1 2 10
0

【样例输出1】

20

【样例输入2】

4 4 2
2 3 4 5
1 2 7
2 3 5
3 4 8
4 1 10
0
1

【样例输出2】

5
15

【数据范围】

对于前 20%20\% 的数据 n5,m10,Q=1n\le 5,m\le 10,Q=1

对于前 30%30\% 的数据 n50,m100,Q5n\le50,m\le100,Q\le5

对于前 40%40\% 的数据 n100,m200,Q5n\le100,m\le200,Q\le5

对于前 50%50\% 的数据 n300,m600,Q100n\le300,m\le600,Q\le100

对于前 60%60\% 的数据 n1000,m2000,Q1000n\le1000,m\le2000,Q\le1000

对于另外 10%10\% 的数据 n1000,m=n1,Q1000n\le 1000,m=n-1,Q\le1000,图保证连通。

对于另外 10%10\% 的数据 m=n1m=n-1,图保证连通。

对于 100%100\% 的数据 1n,Q1051\le n,Q\le 10^50m2×1050\le m\le 2\times10^50ai1040\le a_i\le 10^40qi,bi1090\le q_i,b_i\le10^9