求助万能谷民
  • 板块灌水区
  • 楼主wyy_2011
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/5/17 19:41
  • 上次更新2023/10/23 15:30:10
查看原帖
求助万能谷民
962076
wyy_2011楼主2023/5/17 19:41

站外题求助

次大公约数

定义 sgcd(x,y) 表示 x 和 y 的次大公约数,即能同时整除x,y的正整数中第二大的数。如果次大公约数不存在,此时sgcd(x,y)=-1。

给定个数, 分别为 a1, a2, ..., an。求 sgcd(a1,a1), sgcd(a1,a2), ..., sgcd(a1,an)。

输入格式 第一行一个正整数 n。

第二行 n 个用空格隔开的正整数,第 i 个为 ai。

测试点 1~2 满足,n=1, ai<=10^9

测试点 3~6 满足,n = 10^4, ai <= 10^9

测试点7~10满足,n=10^5, ai <= 10^12

输出格式 一行 n 个用空格隔开的整数,第 i 个表示 sgcd(a1,ai)。

输入/输出例子1 输入:

4

12450 1 2 450

输出:

6225 -1 1 75

输入/输出例子2 输入:

8

30030 6 10 12 55 36 450 666

输出:

15015 3 5 3 11 3 15 3

2023/5/17 19:41
加载中...