CF2124C Subset Multiplication

题目描述

Alice 有一个数组 $a$,包含 $n$ 个正整数。这个数组满足一个优美的性质:对于每个 $1\leq i\leq n-1$,$a_i$ 整除 $a_{i+1}$。 Bob 看到 Alice 优美的数组,心生嫉妒。为了给她捣乱,Bob 先生成了一个长度为 $n$ 的数组 $b$,使得对于每个 $1\leq i\leq n$ 都有 $b_i=a_i$。然后,他会选择一个正整数 $x$,从 $b$ 中选出一些元素(可以不选,可以全选),给这些元素乘上 $x$。 形式化地,他选择了一个(可空)子集 $S\subseteq \{1,2,\cdots,n\}$,对于每个 $i\in S$,令 $b_i:= b_i\cdot x$。 给你一个数组 $b$,但是你并不知道数组 $a$ 和被选择的数字 $x$。你需要输出任意一个 Bob 可以选择的整数 $x$,使得给一个恰当的数组 $a$ 中的某个子集中的元素乘上 $x$,可以得到数组 $b$。保证答案存在。如果有多个符合题意得整数,你可以输出其中任意一个。

输入格式

每个测试点包含多组测试数据。第一行包含测试数据的组数 $t$($1\leq t\leq 2\cdot 10^5$)。测试数据的说明如下。 每组测试数据的第一行包含一个整数 $n$($2\leq n\leq 6\cdot 10^5$),表示数组 $b$ 的长度。 每组测试数据的第二行包含 $n$ 个整数 $b_1,b_2,\cdots,b_n$($1\leq b_i\leq 10^9$),表示数组 $b$。 保证 $b$ 可以用题面中的方式,由一些优美的数组 $a$ 和一些正整数 $x$ 得到。 保证所有测试数据中 $n$ 的总和不超过 $6\cdot 10^5$。

输出格式

对于每组测试数据,在新的一行中输出任意一个合法的 $x$($1\leq x\leq 10^9$)。保证至少存在一个合法的 $x$。

说明/提示

在第一组测试数据中,Bob 可以选择 $x=343$ 和 $S=\{\}$(表示他不改变 $a$ 中元素)。 在第三组测试数据中,Bob 可以选择 $x=4$ 和 $S=\{1,2\}$,表示他同时给 $b_1$ 和 $b_2$ 乘上 $4$。初始数组为 $\{1,2,4,8\}$,满足题目中所要求的性质。