AT_kupc2018_m.整数と根付き木
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
整数与有根树
现有一棵有根树 T,由顶点 1 至 N 编号而成。最初的根是 1 号点。
树 T 上有 N−1 条边,第 i 条边连接了顶点 ai 和 bi。
每个顶点 v 都有自己的整数数组 Av。最初它们都是空的。
这棵有根树 T 被查询了 Q 次。共有 3 种不同的查询操作,每种操作如下:
1 v x k- 为顶点 v 的子树中的任意顶点(包括顶点 v)u 添加 k 值 x 至 Au。2 v y z- 求顶点 v 处的数组 Av 中满足 val xor y ≤ z 且值为 val 的元素个数。其中 s xor t 是指 s 和 t 的位排中或。3 v- 将根节点改为顶点 v。
您必须编写一个程序来依次处理这些查询。
输入格式
输入通过标准输入,格式如下。
N
a1 b1
a2 b2
.
.
aN−1 bN−1
Q
Query1
Query2
.
.
QueryQ
- Queryi 以
1 v x k
,2 v y z或3 v的形式逐行输入。
输出格式
对于形式为2 v y z的查询,按给定的顺序输出答案。
样例解释
样例1:
- 1 1 第二次查询将 1 的值 1 添加到 A1 、 A2 、 A3 和 A4 中。
- 2 第二次查询将 {800266674} 的值 1 添加到 A2 中。
- 3 3 第二次查询将 3 值 1 分别添加到 A3 和 A4 中。
- 4 4 第二次查询将顶点 1 的根更改为顶点 4 。
- 5 5 第二次查询的结果是 1 ,即低于 4 的值的个数,因为 A1={1} 和 1 xor 0=1 的值都低于 4 。
- 6 第二个查询输出 2 ,即 A2={1,2} 和 1 xor 1=0 和 2 xor 1=3 ,所以 3 或更少 7
- 7 第二次查询输出 2 ,这是低于 2 的数值个数,因为 A4={1,3} 、 1 xor 3=2 、 3 xor 3=0 。 2
- 8 第二次查询将 1 值 3 添加到 A1 、 A2 和 A3 。
- 第 9 次查询将 A1 和 A2 以及 A3 和 A4 的值 4 添加到 1 中。
- 第二个查询 10 通过 1 将 1 的值添加到 A1 和 A2 中。
- 11 第二次查询通过 1 将 2 的值添加到 A2 中。
- 12 A1={1,3,4,1} 查询添加了 1 xor 0=1 、 3 xor 0=3 、 4 xor 0=4 、 4 xor 0=4 、 4 4 xor 0=4 。 1 xor 0=1 ,因此输出 4 ,即低于 4 的数值个数。
- 第 13 次查询会产生 A2={1,2,3,4,1,2} 和 1 xor 1=0 , 2 xor 1=3 , 3 xor 1=2 , 4 xor 1=5 , 1 xor 1=0 , 2 xor 1=3 所以输出 5 ,这是低于 3 的值的个数。 5
- 14 ,即 A4={1,3,4} 和 1 xor 3=2 , 3 xor 3=0 , 4 xor 3=7 , 所以 5 是 3 5 下面的数值。 2 ,即低于 2 的数值个数。
样例3:
输出不一定适合 32 位整数类型。
输入输出样例
输入#1
4 1 2 1 3 3 4 14 1 1 1 1 1 2 2 1 1 3 3 1 2 1 0 4 2 2 1 3 2 4 3 2 3 4 1 3 3 1 1 4 4 1 1 1 1 1 1 2 2 1 2 1 0 4 2 2 1 3 2 4 3 2
输出#1
1 2 2 4 5 2
输入#2
1 11 1 1 4 1 1 1 14 2 1 1 10 4 1 1 8 8 1 1 12 16 1 1 2 32 1 1 6 64 1 1 0 128 2 1 0 10 2 1 10 10 2 1 8 10
输出#2
237 190 190
输入#3
1 11 1 1 0 1000000000 1 1 0 1000000000 1 1 0 1000000000 1 1 0 1000000000 1 1 0 1000000000 1 1 0 1000000000 1 1 0 1000000000 1 1 0 1000000000 1 1 0 1000000000 1 1 0 1000000000 2 1 0 2
输出#3
10000000000
输入#4
1 2 1 1 1 123 2 1 0 1073741823
输出#4
123
说明/提示
- 所有输入均为整数。
- 1≤N≤1.4×105
- 1≤Q≤1.4×105
- 1≤ai,bi≤N
- 1≤v≤N
- 0≤x,y,z<230
- 1≤k≤109
- 给定图形是一棵树。
输入解题思路,AI测评打分。不知道怎么写?