#P15608. [ICPC 2021 Jakarta R] Not One
[ICPC 2021 Jakarta R] Not One
说明
一组正整数 的最大公约数(GCD)定义为最大的正整数 ,使得 是 中所有元素的约数,例如,,,。
本题中,给定一棵具有 个节点的树,节点编号从 到 ,每个节点被赋予一个正整数 。你的任务是找出最大的子树,使得该子树中所有节点权值的最大公约数不为 ,如果不存在这样的子树,则输出 。树 是 的子树当且仅当 是连通的且是 的子集。子树的大小是指该子树中的节点数量。
例如,考虑下面一棵 个节点的树,其中 。
:::align{center}
:::
在这个例子中,有 个子树,其所有节点权值的最大公约数不为 ,即七个大小为 的子树,四个大小为 的子树,三个大小为 的子树,以及一个大小为 的子树(最大的)。最大的子树包含节点 、、 和 ,它们权值的最大公约数为 $\text{GCD}(A_4, A_5, A_6, A_7) = \text{GCD}(6, 10, 6, 4) = 2$。
输入格式
输入第一行包含一个整数 (),表示给定树的节点数量。下一行包含 个整数 (),表示第 个节点的权值。接下来 行,每行包含两个整数 和 (),表示连接节点 和 的一条边。保证给定的树是连通的。
输出格式
输出一行一个整数,表示最大的子树的大小,该子树中所有节点权值的最大公约数不为 。如果不存在这样的子树,则输出一行 。
7
10 5 8 6 10 6 4
1 2
2 3
2 4
4 5
4 6
4 7
4
4
1 1 1 1
1 2
2 3
3 4
0
5
100 100 100 100 100
3 4
1 2
3 5
2 4
5
提示
样例 #2 解释
在这种情况下,不存在所有节点权值的最大公约数不为 的子树。
翻译由 DeepSeek 完成
京公网安备 11011102002149号