#P5136. 数列

数列

Description

小慧最近学习了质数和合数,她对一个有n个数的数列a按下述方法生成了数列b

1.把数列a的每个数全部放到数列b中;

2.对于数列a的每一个数ai,如果ai是质数,则把正整数中的第ai个质数放到数列b中,如果ai是合数,则把ai的最大因子(除了ai本身)放到数列b中;

3.把数列b中的2*n个数打乱顺序。

现在小慧给出了数列b2*n个整数bi,问原来的数列a是哪些数?

Input Format

第一行,一个整数n,表示原数列a共有n个正整数。

第二行,2*n个整数,表示按规则生成的数列b

数据范围:

对于50%的数据,1<=n<=10002<=ai<=10002<=bi<=7919(即第1000个质数)

对于100%的数据,1<=n<=1000002<=ai<=1000002<=bi<=1299709(即第100000个质数)
</span>

Output Format

按从小到大的顺序输出原数列an个整数。

3
3 5 2 3 2 4
2 3 4

Hint

样例解释:

2是质数,第2个质数是33是质数,第3个质数是54是合数,其非本身的最大因子是2,因此原数列2 3 4按规则变成数列2 3 4 3 5 2,符合输入的b数组。

Source

南海区赛 2024南海小学 欧拉筛 二分查找