Бінарні рядки Фібоначчі#2527

Бінарні рядки Фібоначчі

1 секунда
64 мегабайти
Дуже легка

Ми знайомі з послідовністю Фібоначчі (, , , , , , ). А що, якщо визначити подібну послідовність для рядків?

Визначимо таку послідовність:

\mathrm{BFS}(0) = \text{"0"} і \mathrm{BFS}(1) = \text{"1"} (тут та — це рядки, а не числа чи ).

Для всіх n > 1, \mathrm{BFS}(n) = \mathrm{BFS}(n - 2) + \mathrm{BFS}(n - 1) (тут позначає конкатенацію рядків; тобто -ий рядок — це конкатенація двох попередніх рядків).

Перші кілька рядків цієї послідовності: , , , , і так далі.

Ваше завдання — знайти -ий рядок цієї послідовності та вивести всі його символи з позицій від до включно. Усі індекси вважаються від .

Вхідні дані

Перший рядок вхідних даних містить одне ціле число (T \leq 100) — кількість тестових випадків.

Кожен тестовий випадок описується трьома цілими числами , , такими, що 0 \leq N, i, j \leq 2^{31} - 1, i \leq j, j - i \leq 10000. Ви можете вважати, що та — коректні позиції (тобто 0 \leq i, j < \textit{довжина} рядка ).

Вихідні дані

Для кожного тестового випадку виведіть підрядок з -ї по -у позицію включно в одному рядку.

Приклади

Приклад 1

Loading
Loading