AT_agc031_f.[AGC031F] Walk on Graph

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

给定一个有 NN 个顶点、MM 条边的连通无向图。每个顶点编号为 1,2,…,N1,2,\ldots,N。第 ii 条边连接顶点 AiA_i 和顶点 BiB_i,边长为 CiC_i。此外,给定一个奇数 MODMOD。

有 QQ 个查询,每个查询的格式如下:

  • 第 ii 个查询给出 Si,Ti,RiS_i,T_i,R_i。请判断是否存在一条从顶点 SiS_i 到顶点 TiT_i 的路径,使得该路径的长度模 MODMOD 后的余数为 RiR_i。这里允许多次经过同一条边,也允许刚走过的边立即返回。

但在本题中,路径的长度不是边长的简单和,而是第 11 条经过的边的长度乘以 11,第 22 条经过的边的长度乘以 22,第 33 条经过的边的长度乘以 44,以此类推。更严格地说,若依次经过长度为 L1,…,LkL_1,\ldots,L_k 的边,则该路径的长度为 ∑Li×2i−1\sum L_i \times 2^{i-1}。

输入格式

输入按以下格式从标准输入读入。

NN MM QQ MODMOD
A1A_1 B1B_1 C1C_1
⋮\vdots
AMA_M BMB_M CMC_M
S1S_1 T1T_1 R1R_1
⋮\vdots
SQS_Q TQT_Q RQR_Q

输出格式

对于每个查询,第 ii 行输出该查询的答案。

输入输出样例

  • 输入#1

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

    输出#1

    YES
    NO
  • 输入#2

    6 6 3 2019
    1 2 4
    2 3 4
    3 4 4
    4 5 4
    5 6 4
    6 1 4
    2 6 1110
    3 1 1111
    4 5 1112

    输出#2

    YES
    NO
    NO
  • 输入#3

    1 2 3 25
    1 1 1
    1 1 2
    1 1 13
    1 1 6
    1 1 14

    输出#3

    YES
    YES
    YES
  • 输入#4

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

    输出#4

    YES
    NO
    NO
    NO
    NO
    NO
    NO
    YES
    YES
    NO

说明/提示

数据范围

  • 1≤N,M,Q≤500001 \leq N, M, Q \leq 50000
  • 3≤MOD≤1063 \leq MOD \leq 10^6
  • MODMOD 是奇数
  • 1≤Ai,Bi≤N1 \leq A_i, B_i \leq N
  • 0≤Ci≤MOD−10 \leq C_i \leq MOD-1
  • 1≤Si,Ti≤N1 \leq S_i, T_i \leq N
  • 0≤Ri≤MOD−10 \leq R_i \leq MOD-1
  • 给定的图是连通的(但可能有自环和重边)

样例解释 1

各个查询的答案如下:

  • 第 11 个查询:按 1,2,31,2,3 的顺序前进,路径长度为 1×20+2×21=51 \times 2^0 + 2 \times 2^1 = 5,存在一条长度模 20192019 余 55 的路径,所以答案为 YES。
  • 第 22 个查询:无论如何从顶点 11 到顶点 33,路径长度模 20192019 都不可能为 44,所以答案为 NO。

由 ChatGPT 4.1 翻译

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

首页