printРабочее место участника

printЗадачи

77. Строки Фибоначчи (2)

Ограничения: время – 2s/4s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Последовательность строк Фибоначчи определяется следующим образом: `s_1`=b, `s_2`=a, `s_k\ =\ s_{k-1}+s_{k-2}` для `k>2`. Например, `s_3`=ab, `s_4`=aba, `s_5`=abaab и т.д.
Даны натуральные числа `N`, `М`, `L`. Требуется вывести подстроку строки `s_N`, начинающуюся с позиции `M` и имеющую длину `L`.
Входной файл содержит одну строку, в которой находятся три разделённых пробелом натуральных числа `N`, `M` и `L`, где `1\ ≤\ \ N\ ≤\ 40`, `1\ ≤\ M\ ≤\ "длина"(s_N)`, `1\ ≤\ L\ ≤\ 1000`.
Выходной файл содержит подстроку строки `s_N`, начинающуюся с позиции `M` и имеющую длину `L` (длина выведенной подстроки может оказаться меньше, если длина оставшейся части строки `s_N` , начинающейся с позиции `M`, меньше `L`).

Пример ввода 1

5 3 2

Пример вывода 1

aa

Пример ввода 2

5 3 10

Пример вывода 2

aab
Источник: VII межвузовская олимпиада по программированию Вологда, 2004
loading