#57. 「2023 新疆省赛」动态树

内存限制:256 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: woruo

题目描述

树是一张无向图,其中任意两点间的简单路径有且只有一条。

最初,树只有一个节点,编号为 。但树是可以生长的,所以你决定观察一棵树的生长全程。

树会生长 次。在第 次生长时,会指定一个已经存在的节点,编号为 ,并将编号为 的节点直接连接到编号为 的节点上。

一棵树的直径是指树上任意两点间的简单路径中,经过的边数最多的一条路径。特别地,两个相同节点之间的简单路径经过的边数为

我们认为,树的直径可以反映它的健康状况:如果一棵树的直径只有一条,我们就认为它是健康的,否则认为它需要被剪枝。显然,最初的树是健康的。

请你仔细观察这棵树的生长全程,找到一个最小的 ,满足这棵树在第 次生长之后变得不健康

输入格式

输入的第一行为一个正整数 ,表示树生长的次数。

接下来一行 个空格分隔的正整数 ,含义如题目描述中所示。

输出格式

输出一行一个整数表示答案。

如果不存在这样的 ,即树的生长全程都是健康的,则输出一行一个整数

样例

样例输入 1

4
1 1 1 1

样例输出 1

3

样例输入 2

5
1 1 2 3 1

样例输出 2

-1

数据范围与提示

对于样例一,在第 次生长后,树的形态如图所示: