3637: 牛半仙的妹子 Tree(第三轮03)
题目描述
牛半仙的妹子的座位呈一个树状结构,由n个点和n − 1条边组成,1 号结点为根。 当牛半仙的一个妹子无视 牛半仙后, 一个单位时间后周围的妹子也会无视牛半 仙。
有些时候牛半仙为了吸引妹子们的注意,会开启鬼畜模式,这时所有妹子无视牛 半仙的状态都会消失,恢复正常,并且这之后的状态不会被之前影响。
牛半仙想知道某个妹子是否无视了他,于是他找到了你,请你帮帮他。
输入
两个数 n, m,代表妹子数与询问个数。
第2到第n行每行2个整数ui, vi ,代表这两个妹子座位之间有边相连。 接下来m行是两个数opt, x,代表操作编号与妹子编号。
如果opt = 1,代表妹子x开始无视牛半仙了。
如果opt = 2, 代表牛半仙开始鬼畜了, 所有妹子无视牛半仙的状态都消失了, 请忽略该操作的x 。
如果opt = 3,代表牛半仙想询问x妹子是否无视他。
其中opt = 1,2,3的操作会占用一个单位时间,且操作1后的下一个单位时间开始 时无视状态开始扩散,操作3是在该单位时间恰好结束时询问。
输出
对于每个opt = 3的询问, 若该妹子无视牛半仙, 输出 `wrxcsd` ,否则输出 `orzFsYo` 。(不需要输出引号)
样例输入 复制
5 4
1 2
1 3
2 4
2 5
1 2
3 2
2 4
3 4
样例输出 复制
wrxcsd
orzFsYo
提示
【样例 1 输入】
5 4
1 2
1 3
2 4
2 5
1 2
3 2
2 4
3 4
【样例 1 输出】
wrxcsd orzFsYo
【样例 1 说明】
样例1中,第一次操作后妹子2的无视牛半仙,所以询问时输出 `wrxcsd` 。经过 操作2后,妹子1,4,5均无视牛半仙, 操作3将所有妹子恢复正常, 故操作4输出 `orzFsYo`。
【样例 2 输入】
10 10
2 1
3 1
4 2
5 3
6 5
7 4
8 2
9 6
10 1
3 3
1 4
1 5
1 6
1 8
3 4
1 2
1 8
1 10
3 6
【样例 2 输出】
orzFsYo
wrxcsd
wrxcsd
【数据范围】
对于 20%的数据:n, m ≤ 1000
对于另 10%的数据:ui = 1
对于另 10%的数据,保证ui = i, vi = i + 1
对于另 15%的数据:保证ui = ⌊i + 1⌋/2, vi = i + 1
对于 100%的数据:n, m ≤ 10^5, 1 ≤ opt ≤ 3, 1 ≤ x ≤ n