#P15140. [SWERC 2025] Factory Table

[SWERC 2025] Factory Table

说明

:::align{center} :::

你正在玩沙盒游戏 Mathcraft。每个等级为 kk 的制作台可以生成所有可能的乘积,这些乘积由 11kk 之间的两个数相乘得到。

如果你展开第 kk 个制作台,你会得到数组 $[1 \cdot 1, 1 \cdot 2, \dots, 1 \cdot k, 2 \cdot 1, 2 \cdot 2, \dots, 2 \cdot k, \dots, k \cdot 1, k \cdot 2, \dots, k \cdot k]$。例如,对于 k=4k = 4,展开后的表是 $[1, 2, 3, 4, 2, 4, 6, 8, 3, 6, 9, 12, 4, 8, 12, 16]$。

你的朋友 Bob 制作了一个展开制作表的连续子数组。这个子数组是 a1,a2,,ana_1, a_2, \dots, a_n

你想知道 Bob 有多熟练,因此你想找到他的制作台的最小可能等级。具体来说,你想确定最小的 kk,使得 a1,a2,,ana_1, a_2, \dots, a_n 作为子数组出现在第 kk 个展开表中。

数组 bb 是数组 cc 的子数组,当且仅当 bb 可以通过从 cc 的开头删除若干(可能为零或全部)元素,并从末尾删除若干(可能为零或全部)元素而得到。

输入格式

每个测试包含多个测试用例。第一行包含测试用例的数量 tt1t5001 \le t \le 500)。接下来是测试用例的描述。

每个测试用例的第一行包含一个整数 nn2n1002 \le n \le 100)—— 数组 a1,a2,,ana_1, a_2, \dots, a_n 的长度。

每个测试用例的第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n1ai1091 \le a_i \le 10^9)。

注意,所有测试用例的 nn 之和没有约束。

输出格式

对于每个测试用例,输出一行一个整数:最小的制作台等级 kk,使得数组 a1,a2,,ana_1, a_2, \dots, a_n 作为连续子数组出现在第 kk 个展开表中。对于给定的输入,这样的 kk 总是存在。

4
4
4 6 8 10
6
8 3 6 9 12 4
5
30 40 50 60 70
4
1 2 2 4
5
4
10
2

提示

样例解释

在第一个测试用例中,数组 [4,6,8,10][4, 6, 8, 10] 是第 55 个展开表的子数组,该展开表为 $[1, 2, 3, 4, 5, 2, 4, 6, 8, 10, \dots, 5, 10, 15, 20, 25]$。没有更小的有效 kk,因此答案为 55

在第二个测试用例中,数组 [8,3,6,9,12,4][8, 3, 6, 9, 12, 4] 是第 44 个展开表的子数组,该展开表为 $[1, 2, 3, 4, 2, 4, 6, 8, 3, 6, 9, 12, 4, 8, 12, 16]$。

翻译由 DeepSeek 完成