CF1742D.Coprime

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

Coprime

题目描述

给定一个包含 nn 个正整数 a1,a2,,ana_1, a_2, \dots, a_n 的数组(1ai10001 \le a_i \le 1000)。请你找出最大的 i+ji + j,使得 aia_iaja_j 互质^{\dagger},如果不存在这样的 i,ji, j,输出 1-1

例如,考虑数组 [1,3,5,2,4,7,7][1, 3, 5, 2, 4, 7, 7]。可以得到的最大 i+ji + j5+75 + 7,因为 a5=4a_5 = 4a7=7a_7 = 7 互质。

^{\dagger} 两个整数 ppqq互质数,当且仅当它们的最大公约数11

输入格式

输入包含多组测试数据。第一行包含一个整数 tt1t101 \leq t \leq 10)——表示测试数据的组数。每组测试数据描述如下:

每组的第一行包含一个整数 nn2n21052 \leq n \leq 2\cdot10^5)——数组的长度。

接下来一行包含 nn 个用空格分隔的正整数 a1,a2,,ana_1, a_2, \dots, a_n1ai10001 \leq a_i \leq 1000)——数组的元素。

保证所有测试数据中 nn 的总和不超过 21052\cdot10^5

输出格式

对于每组测试数据,输出一个整数——满足条件的最大 i+ji + j,如果不存在满足条件的 i,ji, j,则输出 1-1

说明/提示

对于第一个测试用例,可以选择 i=j=3i = j = 3,此时下标之和为 66,因为 1111 互质。

对于第二个测试用例,可以选择 i=7i = 7j=5j = 5,下标之和为 7+5=127 + 5 = 12,因为 7744 互质。

由 ChatGPT 4.1 翻译

样例

6
3
3 2 1
7
1 3 5 2 4 7 7
5
1 2 3 4 5
3
2 2 4
6
5 4 3 15 12 16
5
1 2 2 3 6
6
12
9
-1
10
7

在线编程 IDE

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