CF1165D Almost All Divisors

题目描述

我们猜测了一个整数 $x$。现在给你一个几乎包含了它所有约数的列表。这里“几乎所有”指的是,列表中包含了除了 $1$ 和 $x$ 以外的所有约数。 你的任务是找出可能的最小整数 $x$,使得它的所有约数(除了 $1$ 和 $x$)恰好是给定的列表。如果输入数据存在矛盾,无法找到这样的 $x$,则输出 $-1$。 你需要回答 $t$ 个独立的询问。

输入格式

输入的第一行包含一个整数 $t$($1 \le t \le 25$),表示询问的数量。接下来有 $t$ 个询问。 每个询问的第一行包含一个整数 $n$($1 \le n \le 300$),表示列表中约数的数量。 每个询问的第二行包含 $n$ 个整数 $d_1, d_2, \dots, d_n$($2 \le d_i \le 10^6$),其中 $d_i$ 是猜测数的第 $i$ 个约数。保证所有 $d_i$ 互不相同。

输出格式

对于每个询问,输出一行答案。 如果该询问的数据存在矛盾,无法找到一个整数 $x$,使得给定的列表恰好是 $x$ 的所有约数(除了 $1$ 和 $x$),则输出 $-1$。否则,输出可能的最小 $x$。

说明/提示

由 ChatGPT 4.1 翻译