Recamán 数列2024.12GESP4级T1
测试数据来自 wjszez/2853
题目描述
小杨最近发现了有趣的Recaman数列,这个数列是这样生成的:
●数列的第一项a1是1;
●如果a(k-1)-k是正整数并且没有在数列中出现过,那么数列的第k项ak为a(k-1)-k,否则为a(k-1)+k。
小杨想知道Recaman数列的前n项从小到大排序后的结果。手动计算非常困难,小杨希望你能帮他解决这个问题。
输入格式
第一行,一个正整数n。
输出格式
一行,n个空格分隔的整数,表示Recaman数列的前n项从小到大排序后的结果。
输入样例1
5
输出样例1
1 2 3 6 7
输入样例2
8
输出样例2
1 2 3 6 7 12 13 20
样例解释
对于样例1, n= 5:
●a1=1;
●a1-2=-1,不是正整数,因此a2=a1+2= 3;
●a2-3=0,不是正整数,因此a3=a2+3= 6;
●a3-4=2,是正整数,且没有在数列中出现过,因此a4= 2;
●a5-5=-3,不是正整数,因此a5=a4+5=7;
a1,a2, a3,a4, a5从小到大排序后的结果为1 2 3 6 7。
数据范围
对于所有数据点,保证1≤n≤3000。
信息
- ID
- 1004
- 难度
- (无)
- 分类
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者