#aBC280F. [ABC280F] Pay or Receive

[ABC280F] Pay or Receive

AT_abc280_f [ABC280F] 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;如果从城市 BiB_i 移动到城市 AiA_i,点数减少 CiC_i

所持有的点数可以为负数。

请回答接下来的 QQ 个询问。

  • 当你以点数为 00 从城市 XiX_i 出发时,抵达城市 YiY_i 时所能拥有的最大点数是多少?
    如果无法从城市 XiX_i 到达城市 YiY_i,请输出 nan;如果在城市 YiY_i 时点数可以无限增加,请输出 inf

输入格式

输入按以下格式从标准输入给出。

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 个询问的答案。

输入输出样例 #1

输入 #1

5 5 3
1 2 1
1 2 2
3 4 1
4 5 1
3 5 2
5 3
1 2
3 1

输出 #1

-2
inf
nan

输入输出样例 #2

输入 #2

2 1 1
1 1 1
1 1

输出 #2

inf

输入输出样例 #3

输入 #3

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

输出 #3

inf
nan
nan
inf
-9

说明/提示

限制条件

  • 2N1052\leq N \leq 10^5
  • 0M1050\leq M \leq 10^5
  • 1Q1051\leq Q \leq 10^5
  • 1Ai,Bi,Xi,YiN1\leq A_i,B_i,X_i,Y_i \leq N
  • 0Ci1090\leq C_i \leq 10^9
  • 所有输入均为整数

样例解释 1

对于第 11 个询问,使用道路 55 从城市 55 移动到城市 33,可以在城市 33 时拥有 2-2 的点数。无法再获得更大的点数,因此答案为 2-2
对于第 22 个询问,可以“反复使用道路 22 从城市 11 到城市 22,再使用道路 11 从城市 22 回到城市 11”,然后再使用道路 22 从城市 11 到城市 22,这样可以让在城市 22 时的点数无限增加。
对于第 33 个询问,无法从城市 33 出发到达城市 11

样例解释 2

输入中可能包含起点和终点为同一城市的道路,或起点和终点为同一城市的询问。

由 ChatGPT 4.1 翻译