Сначала поговорим о последовательностях Битти . Учитывая положительное иррациональное число r , мы можем построить бесконечную последовательность, умножив положительные целые числа на r по порядку и взяв слово для каждого полученного вычисления. Например,
Если r > 1, мы имеем специальное условие. Мы можем сформировать другое иррациональное число s как s = r / ( r - 1). Затем он может генерировать свою собственную последовательность Битти, B s . Аккуратно фокус в том , что Б г и Б ы являются взаимодополняющими , а это означает , что каждое положительное целое число в точности одну из двух последовательностей.
Если мы установим r = ϕ, золотое сечение, то получим s = r + 1 и две специальные последовательности. Ниже последовательность Wythoff для г :
1, 3, 4, 6, 8, 9, 11, 12, 14, 16, 17, 19, 21, 22, 24, 25, 27, 29, ...
и верхняя последовательность Витоффа для s :
2, 5, 7, 10, 13, 15, 18, 20, 23, 26, 28, 31, 34, 36, 39, 41, 44, 47, ...
Это последовательности A000201 и A001950 в OEIS, соответственно.
Соревнование
Учитывая положительное входное целое число 1 <= n <= 1000
, выведите одно из двух различных значений, указывающих, находится ли вход в нижней последовательности Wythoff или в верхней последовательности. Выходными значениями могут быть -1
и 1
, true
и false
, upper
и lower
, и т. Д.
Хотя представленный алгоритм теоретически должен работать для всех входных данных, на практике он должен работать только с первыми 1000 входными числами.
I / O и правила
- Вход и выход могут быть заданы любым удобным способом .
- Можно предположить, что ввод и вывод соответствуют типу номера вашего языка.
- Либо полная программа или функция приемлемы. Если функция, вы можете вернуть вывод, а не распечатать его.
- Стандартные лазейки запрещены.
- Это код-гольф, поэтому применяются все обычные правила игры в гольф, и выигрывает самый короткий код (в байтах).