2009 - 硬币翻转

通过次数

18

提交次数

57

Time Limit : 1 秒
Memory Limit : 64 MB

假设有n个硬币(n为不大于5000的正整数),从1到n按顺序依次编号,初始时全部处于正面向上的状态;有m个人(m为不大于n的正整数)也从1到m依次编号。 第一个人(1号)将硬币全部翻转一次,第二个人(2号)将编号为2的倍数的硬币翻转一次,第三个人(3号)将编号为3的倍数的硬币翻转一次。依照编号递增顺序,以后的人都和3号一样,将凡是自己编号倍数的硬币翻转一次。 请问:当第m个人操作之后,哪些硬币是正面向上的,按从小到大输出其编号,以空格分开。

Input

输入正整数n和m,以单个空格隔开。

Output

顺次输出正面向上的硬币的编号,其间用空格间隔。

Examples

Input

10 10

Output

2 3 5 6 7 8 10

Hint

原则上此问题作为CIE等级考试一级的试题出现,属于超纲的试题。

一般方法求解本题需要使用到数组。但是不用数组也可以完成,对初学者来说,有些难度。

Source

CIE等级考试