AT_abc061_d.[ABC061D] Score Attack

提高+/省选-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

有一个包含 NN 个顶点和 MM 条带权有向边的有向图。
第 ii 条边(1≤i≤M1 \leq i \leq M)连接顶点 aia_i 到顶点 bib_i,权值为 cic_i。
利用这个图和棋子,进行如下的一人游戏。

最开始,将棋子放在顶点 11,玩家的分数为 00。
玩家可以按照以下规则不断移动棋子:

  • 当棋子在顶点 aia_i 时,可以通过第 ii 条边移动到顶点 bib_i。移动后,玩家的分数增加 cic_i。

只有当棋子在顶点 NN 时,游戏才能结束。
保证在给定的有向图中,存在从顶点 11 到顶点 NN 的路径。

当玩家采取使游戏结束时分数尽可能大的策略时,游戏结束时的分数会是多少?
如果游戏结束时的分数可以无限大,请输出 inf。

输入格式

输入以如下格式从标准输入读入:

NN MM
a1a_1 b1b_1 c1c_1
a2a_2 b2b_2 c2c_2
⋮\vdots
aMa_M bMb_M cMc_M

输出格式

如果游戏结束时的分数可以无限大,输出 inf;否则输出游戏结束时分数的最大值。

输入输出样例

  • 输入#1

    3 3
    1 2 4
    2 3 3
    1 3 5

    输出#1

    7
  • 输入#2

    2 2
    1 2 1
    2 1 1

    输出#2

    inf
  • 输入#3

    6 5
    1 2 -1000000000
    2 3 -1000000000
    3 4 -1000000000
    4 5 -1000000000
    5 6 -1000000000

    输出#3

    -5000000000

说明/提示

限制条件

  • 2≤N≤10002 \leq N \leq 1000
  • 1≤M≤min⁡(N(N−1),2000)1 \leq M \leq \min(N(N-1), 2000)
  • 1≤ai,bi≤N (1≤i≤M)1 \leq a_i, b_i \leq N\ (1 \leq i \leq M)
  • ai≠bi (1≤i≤M)a_i \neq b_i\ (1 \leq i \leq M)
  • ai≠aja_i \neq a_j 或 bi≠bj (1≤i<j≤M)b_i \neq b_j\ (1 \leq i < j \leq M)
  • −109≤ci≤109 (1≤i≤M)-10^9 \leq c_i \leq 10^9\ (1 \leq i \leq M)
  • cic_i 为整数。
  • 给定的图保证存在从顶点 11 到顶点 NN 的路径。

样例解释 1

将棋子移动到顶点 N=3N=3 的路径有以下两种:

  • 顶点 11 → 顶点 22 → 顶点 33:分数 4+3=74+3=7
  • 顶点 11 → 顶点 33:分数 55
    因此,游戏结束时分数的最大值为 77。

样例解释 2

通过不断执行“顶点 11 → 顶点 22 → 顶点 11 → 顶点 22 …”的操作,可以让游戏结束时的分数无限增加。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页