定义
a(1) = 1a(2) = 2a(n)是最小的数字k>a(n-1),它避免的任何3项算术级数a(1), a(2), ..., a(n-1), k。- 换句话说,
a(n)是的最小数目k>a(n-1),使得不存在x,y其中0<x<y<n和a(y)-a(x) = k-a(y)。
算出例子
对于n=5:
我们有 a(1), a(2), a(3), a(4) = 1, 2, 4, 5
如果为a(5)=6,则2, 4, 6形成算术级数。
如果为a(5)=7,则1, 4, 7形成算术级数。
如果为a(5)=8,则2, 5, 8形成算术级数。
如果为a(5)=9,则1, 5, 9形成算术级数。
如果为a(5)=10,则找不到算术级数。
因此a(5)=10。
任务
给定n,输出a(n)。
眼镜
n将是一个正整数。- 您可以使用0索引而不是1索引,在这种情况下
n可以为0。如果您使用的是0索引,请在答案中注明。
计分
由于我们试图避免3项算术级数,并且3是一个小数,因此就字节数而言,您的代码应尽可能小(即短)。
测试用例
测试用例是1索引的。您可以使用0索引,但请在答案中进行指定。
1 1
2 2
3 4
4 5
5 10
6 11
7 13
8 14
9 28
10 29
11 31
12 32
13 37
14 38
15 40
16 41
17 82
18 83
19 85
20 86
10000 1679657
参考文献
- Wolfram数学世界
- OEIS A003278
2
有关。(如果我正确理解了您的挑战。)
—
Martin Ender
@MartinEnder您确实正确理解了我的挑战。
—
Leaky Nun