#97. 夜符「Night Bird」

夜符「Night Bird」

题目描述

定义 sgcd(x,y)\operatorname{sgcd}(x,y) 表示 x,yx,y 的次大公因数,即能同时整除 x,yx,y 的正整数中第二大的数。

特别的,若不存在次大公因数则定义 sgcd(x,y)=1\operatorname{sgcd}(x,y)=-1

给定一个长度为 nn 的序列 a1,a2,,ana_1,a_2,\dots,a_n,求出 $\operatorname{sgcd}(a_1,a_1),\operatorname{sgcd}(a_1,a_2),\dots,\operatorname{sgcd}(a_1,a_n)$。

输入格式

第一行一个正整数 nn

第二行 nn 个由空格隔开的正整数,第 ii 个正整数表示 aia_i

输出格式

一行 nn 个由空格隔开的数,第 ii 个表示 sgcd(a1,ai)\operatorname{sgcd}(a_1,a_i)

4
12450 1 2 450
6225 -1 1 75
8
30030 6 10 12 55 36 450 666
15015 3 5 3 11 3 15 3

大样例

大样例

数据规模与约定

测试点编号 n,ain,a_i 规模
121-2 n=1,ai109n=1,a_i \le 10^9
363-6 n104,ai109n \le 10^4,a_i \le 10^9
7107-10 n105,ai1012n \le 10^5,a_i \le 10^{12}