2238: Recamán(2024年12月C++四级)

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:26 Solved:10

Description

小杨最近发现了有趣的 Recamán 数列,这个数列是这样生成的:
数列的第一项a1是1;
如果ak-1-k是正整数并且没有在数列中出现过,那么数列的第k项akak-1-k,否则为ak-1+k
小杨想知道 Recamán 数列的前n项从小到大排序后的结果。手动计算非常困难,小杨希望你能帮他解决这个问题。

Input

第一行,一个正整数n, 1<=n<=3000。

Output

一行,n个空格分隔的整数,表示 Recamán 数列的前 项从小到大排序后的结果。

Sample Input Copy

8

Sample Output Copy

1 2 3 6 7 12 13 20

Source/Category