#4482. Pay or Receive

0

Pay or Receive

Pay or Receive

题目描述

有 NN 个城镇,编号为 1,…,N1,\ldots,N,以及 MM 条道路,编号为 1,…,M1,\ldots,M。 道路 ii 连接城镇 AiA_i 和 BiB_i。当你使用一条道路时,你的 分数 会按如下方式变化:

当你沿道路 ii 从城镇 AiA_i 移动到城镇 BiB_i 时,你的分数增加 CiC_i;当你沿道路 ii 从城镇 BiB_i 移动到城镇 AiA_i 时,你的分数减少 CiC_i。

你的分数可以为负数。 回答接下来 QQ 个问题。

如果你从城镇 XiX_i 出发,初始分数为 00,求当你位于城镇 YiY_i 时可能达到的最大分数。
如果你无法从城镇 XiX_i 到达城镇 YiY_i,则输出 nannan;如果你可以在位于城镇 YiY_i 时让分数任意大,则输出 infinf。

输入格式

输入从标准输入给出,格式如下: NN MM QQ A1A_1 B1B_1 C1C_1 ⋮\vdots AMA_M BMB_M CMC_M X1X_1 Y1Y_1 ⋮\vdots XQX_Q YQY_Q

输出格式

按题目要求输出 QQ 行结果。
第 ii 行应包含第 ii 个问题的答案。

5 5 3
1 2 1
1 2 2
3 4 1
4 5 1
3 5 2
5 3
1 2
3 1
-2
inf
nan
2 1 1
1 1 1
1 1
inf
9 7 5
3 1 4
1 5 9
2 6 5
3 5 8
9 7 9
3 2 3
8 4 6
2 6
4 3
3 8
3 2
7 9
inf
nan
nan
inf
-9

提示

2≤N≤1052\leq N \leq 10^5 0≤M≤1050\leq M \leq 10^5 1≤Q≤1051\leq Q \leq 10^5 1≤Ai,Bi,Xi,Yi≤N1\leq A_i,B_i,X_i,Y_i \leq N 0≤Ci≤1090\leq C_i \leq 10^9 输入中的所有数均为整数。对于第一个问题,如果你使用道路 55 从城镇 55 移动到城镇 33,当你到达城镇 33 时可以得到分数 −2-2。
因为无法使分数更大,答案为 −2-2。 对于第二个问题,如果你反复按如下方式行走,就可以在到达城镇 22 时使分数任意大: 重复“使用道路 22 从城镇 11 到城镇 22,然后使用道路 11 从城镇 22 到城镇 11”若干次, 最后再使用道路 22 从城镇 11 到城镇 22。 对于第三个问题,你无法从城镇 33 到达城镇 11。
道路的端点可能相同,问题中给出的端点也可能相同。

标签: AtCoder|abc280F

来源

AtCoder|abc280F