Определение
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-indexed вместо 1-indexed, в этом случае
nможет быть0. Пожалуйста, укажите это в своем ответе, если вы используете 0-indexed.
счет
Поскольку мы пытаемся избежать 3-членной арифметической прогрессии, а 3 - это небольшое число, ваш код должен быть как можно меньшим (то есть коротким) с точки зрения количества байтов.
Testcases
Тестовые случаи 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
Ссылки
- WolframMathWorld
- OEIS A003278