测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A2296. 又是毕业季II

编程题 普及+/提高

题目描述

“叮铃铃铃”,随着高考最后一科结考铃声的敲响,三年青春时光顿时凝固于此刻。毕业的欣喜怎敌那离别的不舍,憧憬着未来仍毋忘逝去的歌。一千多个日夜的欢笑和泪水,全凝聚在毕业晚会上,相信,这一定是一生最难忘的时刻!
彩排了一次,老师不太满意。当然啦,取每位同学的号数来找最大公约数显然不太合理。于是老师给每位同学评了一个能力值。于是现在问题变为,从 $n$ 个学生中挑出 $k$ 个人使得他们的默契程度(即能力值的最大公约数)最大。但因为节目太多了,而且每个节目需要的人数又不知道。老师想要知道所有情况下能达到的最大默契程度是多少。这下子更麻烦了,还是交给你吧~

PS:一个数的最大公约数即本身。

输入格式

第一行一个正整数 $n$。

第二行为 $n$ 个空格隔开的正整数,表示每个学生的能力值。

输出格式

总共 $n$ 行,第 $i$ 行为 $k=i$ 情况下的最大默契程度。

输入输出样例

输入 #1
4
1 2 3 4
输出 #1
4
2
1
1

说明/提示

【数据范围】

记输入数据中能力值的最大值为 $\textit{inf}$。

- 对于 $20\%$ 的数据,$n \leq 5$,$\textit{inf}\leq 10^3$;
- 对于另 $30\%$ 的数据,$n \leq 100$,$\textit{inf} \leq 10$;
- 对于 $100\%$ 的数据,$n \leq 10^4$,$\textit{inf} \leq 10^6$。
上一题 去做题 下一题