Позволяет определить последовательность указателей , чтобы быть любой последовательностью таким образом, что а (п) = а ((п-1) - (а (п-1))) FORALL п больше некоторого конечного числа. Например, если наша последовательность началась с
3 2 1
Наш следующий термин будет 2
, потому что a (n-1) = 1 , (n-1) -1 = 1 , a (1) = 2 (этот пример - нулевой индекс, однако не имеет значения, какой индекс вы используете для расчета всегда быть одинаковым.) Если мы повторим процесс, мы получим бесконечную последовательность
3 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2
задача
Учитывая некоторый начальный массив положительных целых чисел, выведите последовательность указателей, начинающуюся с этого массива.
Типы выхода
Вывод должен быть гибким, если вы решите написать функцию в качестве вашей программы, которую она может вернуть, либо бесконечный список целых чисел, либо функцию, которая индексирует последовательность. Если вы решите написать полную программу, вы можете выводить термины последовательности бесконечно.
Вы также можете выбрать два входа: начальный массив и индекс. Если вы решите сделать это, вам нужно только вывести член последовательности по этому индексу.
Вам никогда не дадут последовательность, которая требует индексации перед началом последовательности. Например 3
, недопустимые входные данные, потому что перед 3
разрешением следующего термина вам потребуются термины .
Это код-гольф, поэтому ваш результат будет равен количеству байтов в вашей программе, а меньший показатель будет лучше.
Тестовые случаи
контрольные примеры для простоты усечены
2 1 -> 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 ...
2 3 1 -> 2 3 1 3 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 ...
3 3 1 -> 3 3 1 3 3 3 1 3 3 3 1 3 3 3 1 3 3 3 1 3 3 3 1 3 3 3 1 3 ...
4 3 1 -> 4 3 1 3 4 4 3 3 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 ...