#466. [R75D]频道校准

[R75D]频道校准

时空限制

2S/256M

题目描述

校准中心收到 nn 台设备的互不相同的正整数编号 a1,a2,,ana_1,a_2,\ldots,a_n,其中 nn 为偶数。

中心需要选择一个正整数频道周期 dd。编号为 aia_i 的设备会进入编号除以 dd 后所得余数对应的频道。

为了让每个启用的频道都由两台设备互相校验,要求每个实际出现的余数都恰好出现两次。满足要求的 dd 称为合法频道周期。

请你求出最大的合法 dd;如果不存在合法的 dd,输出 -1

格式

输入格式

第一行包含一个整数 nn

第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n

输出格式

输出一个整数,表示最大的合法频道周期;如果不存在,输出 -1

样例

样例输入 #1

4
1 4 7 10

样例输出 #1

6

样例解释 #1

66 取余后得到 (1,4,1,4)(1,4,1,4),两个启用频道中都恰有两台设备;不存在更大的合法频道周期。

样例输入 #2

4
1 2 3 5

样例输出 #2

-1

样例解释 #2

可以验证,不存在满足要求的正整数频道周期。

数据规模

注意:你只有通过了子任务的所有测试点,才能获得对应子任务的分数。

子任务编号 分数 nn\le 特殊性质
11 2020 1414
22 3030 200200 特殊性质 A
33 5050

特殊性质 A:对于所有 1in1 \le i \le n,均有 ai105a_i \le 10^5

对于 100%100\% 的数据,满足 2n2002 \le n \le 200nn 为偶数,1ai1091 \le a_i \le 10^9,并且所有 aia_i 互不相同。