AT_utpc2020_i.UTPC Kingdom

通过率:0%

AC君温馨提醒

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

题目描述

在UTPC王国中,分布着 NN 座城镇与 MM 条街道。每条街道连接着两座城镇,其中第 ii 条街道连接的是城镇 AiA_i 和城镇 BiB_i。考虑将城镇作为图中的顶点,街道作为边,由这些组成的图是一个无向连通图。图中可能存在多重边,但不含自环。

街道上会出现凶猛的怪物,第 ii 条街道的危险度由怪物的强度决定,是一个整数 CiC_i,并且这些危险度历来不同,即 C1,…,CMC_1, \ldots, C_M 互不相同。

一个旅行可以被定义为从一个城镇出发,沿着一些街道到达另一个城镇的经过街道序列。对旅行 J=(J1,J2,…,JL)J = (J_1, J_2, \ldots, J_L),其危险度由以下公式计算:∑i=1L(106)CJi\sum_{i=1}^{L} (10^6)^{C_{J_i}}。两座城镇 ii 和 jj 的敌对程度定义为连接这两个城镇的所有可能旅行中危险度的最小值。如果无法通过任意旅行连接这两座城镇,那么敌对程度为极大值 10101010^{10^{10}}。

不幸的是,UTPC王国的一些街道因为灾害将在每一年遭到不可避免的中断。在第 ii 年,编号为 TiT_i 的街道将因灾害无法通行。由于某条街道的关闭可能会增加两座城镇之间的敌对程度,我们可以通过永久封锁这些城镇之间的其他街道以维持国内稳定。此封锁可能会导致新的敌对城镇产生,因此该过程将根据需求反复进行,直到不再需要新的封锁。值得注意的是,一旦某条街道被关闭后,将不会再恢复通行。

我们需计算的是每年因首次封锁或灾害导致无法通行的街道编号之和 SiS_i。不过,编号 TiT_i 是加密的,在输入中通过 XiX_i 给出,满足 Si−1⊕Xi=TiS_{i-1} \oplus X_i = T_i,从而可以解密出 TiT_i(⊕\oplus 表示异或运算,且 S0S_0 为 00)。

同时,请注意:可能有些因灾害中断的街道已在之前被封锁。

输入格式

输入将从标准输入中以如下形式给出:

NN MM
A1A_1 B1B_1 C1C_1
⋮\vdots
AMA_M BMB_M CMC_M
QQ
X1X_1
⋮\vdots
XQX_Q

输出格式

对于每个年度事件,输出 QQ 行。第 ii 行表示第 ii 年度首次因封锁或灾害导致无法通行的街道编号之和 SiS_i。

数据范围与提示

  • 所有输入均为整数。
  • 1≤N,M,Q≤3×1051 \le N, M, Q \le 3 \times 10^5
  • 1≤Ai,Bi≤N1 \le A_i, B_i \le N
  • 1≤Ci≤1091 \le C_i \le 10^9
  • 危险度 CiC_i 互不相同。
  • 1≤Ti=Si−1⊕Xi≤M1 \le T_i = S_{i-1} \oplus X_i \le M
  • 街道编号 TiT_i 互不相同。
  • 构成的图是一个无向连通图,可能存在重边但没有自环。

样例解释 1

第 1 年时,由于 S0⊕1=1S_0 \oplus 1 = 1,1 号街道受灾而无法通行,因此导致需要封锁 3 号和 4 号街道。于是,1 号、3 号和 4 号街道均属无法通行状态,因而 S1=8S_1 = 8。输出 8。第 2 年时,由于 S1⊕10=2S_1 \oplus 10 = 2,2 号街道因灾受损,新封锁的街道无需增加,故输出 2。

本翻译由 AI 自动生成

输入输出样例

  • 输入#1

    3 4
    1 2 1
    2 3 2
    3 1 3
    1 2 4
    2
    1
    10

    输出#1

    8
    2

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

首页