#XYD0005. 真心为你

    ID: 5605 传统题 文件IO:evangelion 2000ms 1000MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>信友队2025CSP-S模拟赛

真心为你

题目背景

明日香正在对战 EVA 量产机。

所有量产机可以视为一张无向图,不同的量产机间时而相连,时而相离。

装备了 N2 机关的量产机在不断变强。具体地,第 ii 个量产机的战力值会变成自己的平方。处于一个联通块的量产机战力变化次数相同。

失去电源的明日香只剩下五分钟。为了更好地应对量产机,她想尽快知道每个由量产机构成的联通块战力之和。你能帮助她吗?

题目描述

现有函数 ffgg,其中 f(x)=x2f(x)=x^2gk(x)g_k(x)ff 复合 kk 次的结果。
换而言之,gk(x)=x2kg_k(x)=x^{2^k}

给定 nn 个点 mm 条边的无向图 GG 以及每个点 ii 的权值 aia_i,要你处理接下来的 qq 个操作。
操作有三种,操作从 1133 编号。点从 11nn 编号。

  • 1 x y 代表在 xxyy 之间添加一条无向边 (x,y)(x,y)。保证边 (x,y)(x,y) 原本不存在。
  • 2 x y 代表删除边 (x,y)(x,y),保证边 (x,y)(x,y) 原本存在。
  • 3 x k 代表查询 xx 所在的联通块 SS 中,iSgk(ai)\sum_{i \in S} g_k(a_i) 的值。

由于答案很大,请输出答案对 998244353998244353 取模的结果。

输入格式

第一行三个整数 nn, mm, qq,代表点数、边数、操作数。

接下来 nn 行,每行一个整数,第 (i+1)(i+1) 行的整数 aia_i 表示节点 ii 的权值。

接下来 mm 行,每行两个整数,第 (i+n+1)(i+n+1) 行的整数 ui,viu_i, v_i 表示一条无向边 (ui,vi)(u_i,v_i)

接下来 qq 行,每行三个整数,分别代表操作类型和操作所需的量。

输出格式

对于每一个 33 号操作,你须输出一行一个整数,表示 xx 所在的联通块 SS 中,iSgk(ai)\sum_{i \in S} g_k(a_i) 的值。

样例

Input 1

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

Output 1

98
41
462979
5
50

数据范围

【子任务】

对于全部的测试点,保证:

  • 1n1051 \leq n \leq 10^51m,q2×1051 \leq m, q \leq 2 \times 10^51ui,vin1 \leq u_i, v_i \leq n0k1090 \leq k \leq 10^91ai<9982443531 \leq a_i < 998244353
  • 对于操作 1,21, 2,保证 1x,yn1 \leq x, y \leq n
  • 对于操作 33,保证 1xn1 \leq x \leq n0k1090 \leq k \leq 10^9
  • 保证给定的图没有重边和自环。
测试点编号 nn \leq m,qm, q \leq 特殊性质
121 \sim 2 10001\,000 20002\,000 B
353 \sim 5
686 \sim 8 10510^5 2×1052 \times 10^5 AB
9109 \sim 10 A
111811 \sim 18 C
192519 \sim 25
  • 特殊性质 A:保证不存在 22 操作。
  • 特殊性质 B:保证 k20k \leq 20
  • 特殊性质 C:保证每个联通块是一棵树。

样例解释

【样例 2】

见选手目录下的 evangelion/evangelion2.inevangelion/evangelion2.ans
该组样例满足测试点 353 \sim 5 的限制。

【样例 3】

见选手目录下的 evangelion/evangelion3.inevangelion/evangelion3.ans
该组样例满足测试点 686 \sim 8 的限制。

【样例 4】

见选手目录下的 evangelion/evangelion4.inevangelion/evangelion4.ans
该组样例满足测试点 111811 \sim 18 的限制。

【样例 5】

见选手目录下的 evangelion/evangelion5.inevangelion/evangelion5.ans
该组样例满足测试点 192519 \sim 25 的限制。