AT_oupc2023_day1_g.Impassable Game

通过率:0%

AC君温馨提醒

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

题目描述

给定一个有 NN 个顶点、MM 条边的有向图 GG 以及一个正整数 KK。

在 GG 中,顶点和边分别编号为顶点 11、顶点 22、...、顶点 NN 以及边 11、边 22、...、边 MM。第 ii 条边(1≤i≤M1 \leq i \leq M)是从顶点 uiu_i 指向顶点 viv_i 的边,附加有参数 bib_i,其中 bib_i 为 00 或 11。

有向图 GG 满足以下三个条件:

  • GG 不包含重边。
  • GG 不包含环。
  • 每个顶点都能通过若干条边从顶点 11 出发到达,且顶点 11 到每个顶点的最短路径长度与最长路径长度相等,且均不超过 KK。

两名玩家使用各自的一枚棋子进行如下博弈:

  • 一开始,每位玩家都将自己的棋子放置在顶点 11 上。
  • 在自己的回合,玩家可以进行以下两种操作之一:
    • 移动:将自己的棋子恰好移动一次。若己方棋子处于顶点 ii,则只能将其移动到有边指向的顶点 jj 上。当己方棋子在顶点 11 时,必须等概率且随机地选择一条可以到达的边移动。注意,先手玩家可以使用所有边,后手玩家只能使用 bi=0b_i=0 的边。
    • 宣布失败:主动认输,结束游戏,本方负,对方胜。
  • 由先手玩家开始,双方轮流操作。如果无人宣布失败,在后手玩家完成第 KK 次移动操作后,游戏结束。此时,如果两枚棋子位于同一顶点,则后手获胜,否则先手获胜。

每位玩家都以胜利为目标采取最优策略。
请计算先手玩家获胜的概率  mod  998244353\bmod\ 998244353。

概率  mod  998244353\bmod\ 998244353 的定义如下:可以证明本题要求的概率一定是有理数,并且在本题的限制下,若该概率为既约分数 yx\frac{y}{x},则 xx 一定与 998244353998244353 互质。此时,存在唯一的 0≤z<9982443530 \leq z < 998244353 满足 y≡xz(mod998244353)y \equiv xz \pmod{998244353},请输出 zz。

输入格式

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

NN MM KK u1u_1 v1v_1 b1b_1 u2u_2 v2v_2 b2b_2 ⋮\vdots uMu_M vMv_M bMb_M

输出格式

输出先手玩家获胜的概率  mod  998244353\bmod\ 998244353。

输入输出样例

  • 输入#1

    5 6 2
    1 2 0
    1 3 0
    2 4 0
    2 5 0
    3 4 0
    3 5 1

    输出#1

    499122177
  • 输入#2

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

    输出#2

    249561089
  • 输入#3

    2 1 1
    1 2 1

    输出#3

    1
  • 输入#4

    16 21 3
    1 2 0
    1 3 0
    2 4 0
    2 5 0
    3 6 0
    3 7 0
    4 8 0
    4 9 0
    5 10 0
    5 11 0
    1 12 1
    1 13 1
    12 14 1
    12 15 1
    13 6 1
    13 7 1
    14 8 1
    14 9 1
    15 10 1
    15 11 1
    1 16 0

    输出#4

    199648871

说明/提示

小题点

1.(11 分)N≤100N\leq 100,M≤1000M\leq 1000
2.(9999 分)无附加限制

样例解释 1

每位玩家各自移动棋子一次后,记先手所在顶点为 ii,后手所在顶点为 jj,所有可能的 (i,j)(i,j) 组合中,先手胜利与后手胜利的组合分别如下:

  • 先手胜利:(2,3)(2,3)、(3,3)(3,3)
  • 后手胜利:(2,2)(2,2)、(3,2)(3,2)

如当选择到 (3,2)(3,2) 时,游戏进程可能如下:

  • 首先将棋子放在顶点 11。
  • 先手使用边 22 将棋子移到顶点 33。
  • 后手使用边 11 将棋子移到顶点 22。
  • 先手使用边 66 将棋子移到顶点 55。
  • 后手使用边 44 将棋子移到顶点 55。
  • 后手完成第 22 次移动,游戏结束。两枚棋子都在顶点 55,后手胜利。

此外,在 $ (3,2)$ 情况下,无论先手采取何种策略,后手都能获胜。

故先手胜率为 12\frac{1}{2},模 998244353998244353 取值为 499122177499122177。

此样例满足小题 11 的限制。

样例解释 2

每位玩家各自移动棋子一次后,记先手所在顶点为 ii,后手所在顶点为 jj,所有可能的 (i,j)(i,j) 组合中,先手胜利与后手胜利的组合分别如下:

  • 先手胜利:(2,3)(2,3)、(3,2)(3,2)、(3,3)(3,3)
  • 后手胜利:(2,2)(2,2)

如当选择到 (3,2)(3,2) 时,游戏进程可能如下:

  • 首先将棋子放在顶点 11。
  • 先手使用边 22 将棋子移到顶点 33。
  • 后手使用边 11 将棋子移到顶点 22。
  • 先手使用边 55 将棋子移到顶点 55。
  • 后手使用边 33 将棋子移到顶点 44。
  • 后手完成第 22 次移动,游戏结束。此时两枚棋子位于不同顶点,先手胜利。

此外,在 $ (3,2)$ 情况下,无论后手采取何种策略,先手都能获胜。

先手胜率为 34\frac{3}{4},模 998244353998244353 取值为 249561089249561089。

此样例满足小题 11 的限制。

样例解释 3

后手必须在未进行任何移动时宣布失败。

此样例满足小题 11 的限制。

样例解释 4

此样例满足小题 11 的限制。

数据范围

  • 2≤N≤40002 \leq N \leq 4000
  • 1≤M≤2×1061 \leq M \leq 2 \times 10^{6}
  • 1≤K≤40001 \leq K \leq 4000
  • 1≤ui,vi≤N1 \leq u_i, v_i \leq N
  • bi∈{0,1}b_i \in \{0, 1\}
  • GG 不含重边。
  • GG 不含环。
  • 每个顶点都能通过若干条边从顶点 11 出发到达,且顶点 11 到每个顶点的最短路径长度与最长路径长度相等,且均不超过 KK。
  • 所有输入均为整数。

由 ChatGPT 5 翻译

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

首页