CF2167D.Yet Another Array Problem

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Yet Another Array Problem

题目描述

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

请找出最小的整数 xx(2≤x≤10182 \le x \le 10^{18}),使得存在某个下标 ii(1≤i≤n1 \le i \le n)满足 gcd⁡∗(ai,x)=1 \gcd^{\text{∗}}(a_i, x) = 1 。如果在区间 [2,1018][2,10^{18}] 内不存在这样的 xx,请输出 −1-1。

∗^{\text{∗}} gcd⁡(x,y) \gcd(x, y) 表示整数 xx 和 yy 的最大公约数。

输入格式

第一行包含一个整数 tt(1≤t≤1041 \le t \le 10^4),表示测试用例的数量。

接下来的 tt 组测试用例,每组包含两行:

第一行包含一个整数 nn(1≤n≤1051 \le n \le 10^5),表示数组的长度。

第二行包含 nn 个用空格分隔的整数 a1,a2,…,ana_1, a_2, \dots, a_n(1≤ai≤10181 \le a_i \le 10^{18})。

保证所有测试用例中 nn 的总和不超过 10510^5。

输出格式

对于每组测试用例,输出一个整数:最小的 xx(2≤x≤10182 \le x \le 10^{18}),使得存在一个下标 ii 满足 gcd⁡(ai,x)=1 \gcd(a_i, x) = 1 。如果区间 [2,1018][2, 10^{18}] 内不存在这样的 xx,则输出 −1-1。

说明/提示

在第一个测试用例中,gcd⁡(2,1)=1 \gcd(2, 1) = 1 ,这是满足条件的最小整数。

在第二个测试用例中:

  • gcd⁡(2,6)=2 \gcd(2, 6) = 2 ,gcd⁡(2,12)=2 \gcd(2, 12) = 2 ,所以 2 不能作为答案。
  • gcd⁡(3,6)=3 \gcd(3, 6) = 3 ,gcd⁡(3,12)=3 \gcd(3, 12) = 3 ,所以 3 不能作为答案。
  • gcd⁡(4,6)=2 \gcd(4, 6) = 2 ,gcd⁡(4,12)=4 \gcd(4, 12) = 4 ,所以 4 不能作为答案。
  • gcd⁡(5,6)=1 \gcd(5, 6) = 1 ,所以答案是 55。

在第三个测试用例中:

  • gcd⁡(2,24)=2 \gcd(2, 24) = 2 ,gcd⁡(2,120)=2 \gcd(2, 120) = 2 ,gcd⁡(2,210)=2 \gcd(2, 210) = 2 ,所以 2 不能作为答案。
  • gcd⁡(3,24)=3 \gcd(3, 24) = 3 ,gcd⁡(3,120)=3 \gcd(3, 120) = 3 ,gcd⁡(3,210)=3 \gcd(3, 210) = 3 ,所以 3 不能作为答案。
  • gcd⁡(4,24)=4 \gcd(4, 24) = 4 ,gcd⁡(4,120)=4 \gcd(4, 120) = 4 ,gcd⁡(4,210)=2 \gcd(4, 210) = 2 ,所以 4 不能作为答案。
  • gcd⁡(5,24)=1 \gcd(5, 24) = 1 ,所以答案是 55。

在第四个测试用例中:

  • gcd⁡(2,2)=2 \gcd(2, 2) = 2 ,gcd⁡(2,4)=2 \gcd(2, 4) = 2 ,gcd⁡(2,6)=2 \gcd(2, 6) = 2 ,gcd⁡(2,10)=2 \gcd(2, 10) = 2 ,所以 2 不能作为答案。
  • gcd⁡(3,2)=1 \gcd(3, 2) = 1 ,所以答案是 33。

由 ChatGPT 5 翻译

样例

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

在线编程 IDE

建议全屏模式获得最佳体验