#XYD0005. 真心为你
真心为你
题目背景
明日香正在对战 EVA 量产机。
所有量产机可以视为一张无向图,不同的量产机间时而相连,时而相离。
装备了 N2 机关的量产机在不断变强。具体地,第 个量产机的战力值会变成自己的平方。处于一个联通块的量产机战力变化次数相同。
失去电源的明日香只剩下五分钟。为了更好地应对量产机,她想尽快知道每个由量产机构成的联通块战力之和。你能帮助她吗?
题目描述
现有函数 和 ,其中 , 为 复合 次的结果。
换而言之,。
给定 个点 条边的无向图 以及每个点 的权值 ,要你处理接下来的 个操作。
操作有三种,操作从 到 编号。点从 到 编号。
1 x y代表在 和 之间添加一条无向边 。保证边 原本不存在。2 x y代表删除边 ,保证边 原本存在。3 x k代表查询 所在的联通块 中, 的值。
由于答案很大,请输出答案对 取模的结果。
输入格式
第一行三个整数 , , ,代表点数、边数、操作数。
接下来 行,每行一个整数,第 行的整数 表示节点 的权值。
接下来 行,每行两个整数,第 行的整数 表示一条无向边 。
接下来 行,每行三个整数,分别代表操作类型和操作所需的量。
输出格式
对于每一个 号操作,你须输出一行一个整数,表示 所在的联通块 中, 的值。
样例
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
数据范围
【子任务】
对于全部的测试点,保证:
- ,,,,。
- 对于操作 ,保证 。
- 对于操作 ,保证 ,。
- 保证给定的图没有重边和自环。
| 测试点编号 | 特殊性质 | ||
|---|---|---|---|
| B | |||
| 无 | |||
| AB | |||
| A | |||
| C | |||
| 无 |
- 特殊性质 A:保证不存在 操作。
- 特殊性质 B:保证 。
- 特殊性质 C:保证每个联通块是一棵树。
样例解释
【样例 2】
见选手目录下的 evangelion/evangelion2.in 与 evangelion/evangelion2.ans。
该组样例满足测试点 的限制。
【样例 3】
见选手目录下的 evangelion/evangelion3.in 与 evangelion/evangelion3.ans。
该组样例满足测试点 的限制。
【样例 4】
见选手目录下的 evangelion/evangelion4.in 与 evangelion/evangelion4.ans。
该组样例满足测试点 的限制。
【样例 5】
见选手目录下的 evangelion/evangelion5.in 与 evangelion/evangelion5.ans。
该组样例满足测试点 的限制。