#P5622. [DBOI2019] 巫女的职责
[DBOI2019] 巫女的职责
题目背景
作为八重村的巫女,樱承担着守卫村庄的责任,村子里受到了崩坏的威胁,八重樱,出击!
题目描述
八重古村有 座房屋,一开始所有的房子之间都没有路,随着古村的发展,慢慢会出现连接两栋房屋的双向道路。
村民们原本过着无忧无虑的幸福生活,直到与文明作对——崩坏来了,慢慢地,某栋房屋也许会在遭受崩坏兽的侵袭,每只崩坏兽都有着一定的崩坏能,每户人家也许会存在着多只崩坏兽。
樱来了,她接受了驱魔委托,每个委托都是从驱逐某个房子到另一个房子的崩坏兽,樱只能走已有的路,由于这样的路径也许有很多条,聪明的樱只会选择在它们所有路径中都会走过的某些点,即必经点,每次委托樱会在两点间的所有必经点驱魔。
输入格式
第一行两个整数: 表示房屋数和事件数
接下来 行,每行三个正整数:
时,表示房子 和房子 间修了一条双向道路(保证没有重边,但不保证没有自环,如有请忽略。)
时,表示房子 来了一只崩坏能为 的崩坏兽
时,表示樱完成了一次从 到 的驱魔委托(不保证 与 连通,不连通输出 即可)
强制在线:记上次的答案为 ,初值为 ,实际上的 用函数解码:
inline const void decode(int &x)
{
x^=lastans%n;
if (x>n)x%=n;
if (!x)x=1;
}
输出格式
对于每个 事件,输出一行一个数表示樱清除的崩坏能的值,答案保证在
4 7
1 1 2
1 1 3
1 3 4
2 1 1
2 1 2
3 1 4
3 3 4
3
0
4 8
2 1 629
3 3 1
2 4 923
1 4 2
2 4 542
2 1 918
1 2 3
3 4 3
0
5
提示
【样例 说明】
第四个事件使 号房屋有 点的崩坏能。
第五个事件使 号房屋增加了 点的崩坏能,此时其崩坏能值为 。
第六个事件显然答案为 ,更新 。
第七个事件真实的 ,,由于第六个事件已经在 驱魔,所以没有崩坏能。
#( 分):
。
#( 分):
。
#( 分):
。
所有测试点的时间限制统一为 ,内存限制统一为 。