Статья Автор: Лебедев Дмитрий

TUZ_2-23 n - й член последовательности Рекамана

TUZ_2-23 n - й член последовательности Рекамана

TUZ_2-23 n - й член последовательности Рекамана
2.23 n - й член последовательности Рекамана
Последовательность Рекамана – это последовательность, демонстрирующая рекуррентное соотношение,
когда вычисление нового элемента зависит от предшествующих.
Для иллюстрации получим n-й член последовательности Рекамана (где n = 1), выполнив вычисления согласно рекурсивной формуле 2.7.
Нулевой член a0 всегда равен нулю. Приступая к вычислению a1, мы обнаруживаем, что 0–1 = –1 < 0, отвергаем второе условие и переходим к третьему, которое дает a1 = 0 + 1.
Ваша задача: написать функцию, которая принимает положительное целое число n и возвращает n-й член последовательности Рекамана.

В табл. 2.23 показаны ожидаемые результаты для некоторых входных данных.
Таблица 2.23. Некоторые ожидаемые результаты для задачи поиска n?го члена последовательности Рекамана
n Ожидаемый результат
17 25
83 72
919 756
632 308

Алгоритм
.Чтобы найти n-й член, алгоритм инициализирует последовательность ее первым элементом и запоминает в ней все последующие элементы.
Затем выполняет итерации по оставшимся элементам до n и для каждого вычисляет следующий элемент, используя формулу 2.7.
Если следующий элемент отрицательный или уже присутствует в последовательности, то использует альтернативную формулу для расчета следующего элемента. Затем следующий вычисленный элемент добавляется в последовательность и в множество использованных элементов.
Наконец, алгоритм возвращает n-й элемент последовательности.


Послушать последовательность Рекамана можно здесь

Пропустить Навигационные Ссылки.
Чтобы оставить комментарий нужна авторизация
Печать