CF1528C.Trees of Tranquillity
提高+/省选-
通过率:0%
时间限制:3.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Soroush and Keshi each have a labeled and rooted tree on n vertices. Both of their trees are rooted from vertex 1.
Soroush and Keshi used to be at war. After endless decades of fighting, they finally became allies to prepare a Codeforces round. To celebrate this fortunate event, they decided to make a memorial graph on n vertices.
They add an edge between vertices u and v in the memorial graph if both of the following conditions hold:
- One of u or v is the ancestor of the other in Soroush's tree.
- Neither of u or v is the ancestor of the other in Keshi's tree.
Here vertex u is considered ancestor of vertex v, if u lies on the path from 1 (the root) to the v.
Popping out of nowhere, Mashtali tried to find the maximum clique in the memorial graph for no reason. He failed because the graph was too big.
Help Mashtali by finding the size of the maximum clique in the memorial graph.
As a reminder, clique is a subset of vertices of the graph, each two of which are connected by an edge.
索鲁什和凯希各自拥有一棵 n 个顶点的带标号有根树,且两棵树的根均为顶点 1。
索鲁什与凯希曾长期处于敌对状态。在经历了数十年无休止的争斗后,他们最终结为同盟,共同筹备一场 Codeforces 比赛。为庆祝这一幸运时刻,他们决定构建一张包含 n 个顶点的纪念图。
他们在纪念图中于顶点 u 与 v 之间连一条边,当且仅当同时满足以下两个条件:
- 在索鲁什的树中,u 或 v 中的某一个为另一个的祖先;
- 在凯希的树中,u 与 v 彼此均不为对方的祖先。
此处,若顶点 u 位于从根(即顶点 1)到顶点 v 的路径上,则称 u 是 v 的祖先。
突然出现的马什塔利毫无缘由地试图求出该纪念图的最大团(maximum clique)。但他失败了,因为这张图规模过于庞大。
请帮助马什塔利,求出该纪念图中最大团的大小。
需要提醒的是:团(clique)是图的一个顶点子集,其中任意两个顶点之间均有边相连。
输入格式
The first line contains an integer t (1≤t≤3⋅105) — the number of test cases. The description of the test cases follows.
The first line of each test case contains an integer n (2≤n≤3⋅105).
The second line of each test case contains n−1 integers a2,…,an (1≤ai<i), ai being the parent of the vertex i in Soroush's tree.
The third line of each test case contains n−1 integers b2,…,bn (1≤bi<i), bi being the parent of the vertex i in Keshi's tree.
It is guaranteed that the given graphs are trees.
It is guaranteed that the sum of n over all test cases doesn't exceed 3⋅105.
第一行包含一个整数 t(1≤t≤3⋅105)—— 表示测试用例的数量。随后是各测试用例的描述。
每个测试用例的第一行包含一个整数 n(2≤n≤3⋅105)。
每个测试用例的第二行包含 n−1 个整数 a2,…,an(1≤ai<i),其中 ai 表示 Soroush 的树中顶点 i 的父节点。
每个测试用例的第三行包含 n−1 个整数 b2,…,bn(1≤bi<i),其中 bi 表示 Keshi 的树中顶点 i 的父节点。
保证所给图均为树。
保证所有测试用例的 n 之和不超过 3⋅105。
输出格式
For each test case print a single integer — the size of the maximum clique in the memorial graph.
对于每个测试用例,输出一个整数——纪念图中最大团的大小。
输入输出样例
输入#1
4 4 1 2 3 1 2 3 5 1 2 3 4 1 1 1 1 6 1 1 1 1 2 1 2 1 2 2 7 1 1 3 4 4 5 1 2 1 4 2 5
输出#1
1 4 1 3
说明/提示
In the first and third test cases, you can pick any vertex.
In the second test case, one of the maximum cliques is 2,3,4,5.
In the fourth test case, one of the maximum cliques is 3,4,6.
在第一个和第三个测试用例中,你可以任选一个顶点。
在第二个测试用例中,其中一个最大团是 {2,3,4,5}。
在第四个测试用例中,其中一个最大团是 {3,4,6}。
输入解题思路,AI测评打分。不知道怎么写?