#CF2167D. 又一道数组问题

    ID: 6982 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>暴力模拟数学数论CodeforcesCodeforces Round 1062(Div4)Div4DCF2167D1000

又一道数组问题

题目描述

给定一个长度为 nn 的整数数组 aa

请找到最小的整数 xx,满足:

2 <= x <= 10^18

并且数组中存在某个元素 aia_i,使得:

gcd(a_i, x) = 1

如果不存在这样的 xx,输出 -1

输入格式

第一行一个整数 tt,表示测试组数。

每组测试数据包含两行:

第一行一个整数 nn

第二行 nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n

保证所有测试数据的 nn 之和不超过 10510^5

输出格式

对于每组测试数据,输出一个整数,表示满足条件的最小 xx。如果不存在,输出 -1

样例

4
1
1
4
6 6 12 12
3
24 120 210
4
2 4 6 10
2
5
5
3

样例说明

第一组测试数据中,gcd(1,2)=1\gcd(1,2)=1,且 22 是允许范围内最小的数,所以答案为 22

第二组测试数据中,2,3,42,3,4 都会和数组中所有数有大于 11 的公因数;而 gcd(6,5)=1\gcd(6,5)=1,所以答案为 55

第三组测试数据中,2,3,42,3,4 也都不满足条件;而 gcd(24,5)=1\gcd(24,5)=1,所以答案为 55

第四组测试数据中,22 与所有数组元素都有公因数 22,但 gcd(2,3)=1\gcd(2,3)=1,所以答案为 33

数据范围

  • 1t1041 \le t \le 10^4
  • 1n1051 \le n \le 10^5
  • 1ai10181 \le a_i \le 10^{18}
  • 所有测试数据的 nn 之和不超过 10510^5

来源

Codeforces Round 1062 (Div. 4), Problem D - Yet Another Array Problem