#luoguP9399. 「DBOI」Round 1 人生如树
「DBOI」Round 1 人生如树
本题没有可用的提交语言。
题目背景
永远这么酷 永远永远这么酷
像个冒险家一样 不断探着山顶的路
——《Hustle》
张均好望着窗外,朱芝心走过来坐在他旁边,折了一架纸飞机飞出去。他对张均好说,要带着对未来的期待,往前走,别回头。
正如 命运 所述,每个人的人生都是一棵树。它总在无限的随机与缘分中伸展,有的枝丫茂盛了,有些却也不可避免地枯萎。
题目描述
朱芝心用魔法得到了张均好的人生树。
这是一棵 个节点的树,节点 上有权值 。
朱芝心想要观测 次张均好的人生:
设当前张均好人生树上的节点数量为 。
-
输入四个整数 。令 的简单路径上顺次组成的数组为 , 的简单路径上顺次组成的数组为 。朱芝心认为张均好这两段人生的相似度是 ,希望你求出它。保证 。
-
输入两个整数 。朱芝心观测到了张均好的另外一种可能,因此你需要新建一个点权为 的节点,编号为 ,建立一条 的无向边,其中 。显然,此后 。
对于两个数组 ,设它们的相似度 表示最大的 满足 且对于所有 ,都有 。其中 表示数组 的长度。特殊地,若不存在这样的 ,则 。
输入格式
第一行三个正整数 ,分别表示树的节点数量,操作数量和该测试点所在 Subtask 编号。对于样例,有 。
接下来一行 个整数,第 个整数表示 ,即点 上的权值。
接下来 行,每行两个正整数 ,表示有一条 的无向边。
接下来 行,每行一个操作。每行第一个整数是 ,后面的若干整数表示操作的具体内容。 时表示是操作 , 时表示是操作 。
输出格式
对于每个操作 ,输出一行,表示当前询问的 。
9 3 0
7 3 2 4 6 5 5 3 7
1 2
2 3
2 4
4 5
4 6
1 7
7 8
7 9
2 9 10
1 3 5 8 10
1 3 6 8 10
4
3
13 5 0
15 12 9 11 5 6 16 14 15 10 12 1 2
7 8
5 6
2 9
1 2
4 5
8 2
9 10
2 3
10 11
3 4
3 13
3 12
1 1 6 7 11
1 12 12 13 13
2 1 10
2 2 11
1 14 14 15 15
6
1
1
提示
样例解释
对于样例一,第一个操作结束后,,树如图所示:
- 对于第二个操作,第一条路径为 ,故 ,第二条路径为 ,故 ,由于 ,,,,所以答案为 ;
- 对于第三个操作,,,由于 ,,,,所以答案为 。
对于样例二,初始的树如图所示:
Subtask | 特殊性质 | 分值 | ||
---|---|---|---|---|
Subtask 1 | 无 | |||
Subtask 2 | A & B | |||
Subtask 3 | B | |||
Subtask 4 | 无 | |||
Subtask 5 |
特殊性质 A:。
特殊性质 B:保证无操作 2。
对于 的数据,,,。