Задача 654
Свободная от трения труба

Пусть $T(n, m)$ будет количеством кортежей натуральных чисел длины $m$, таких что сумма любых двух соседних элементов в кортеже $\le n$.

Например, $T(3, 4)=8$, что показано следующими кортежами длины $4$:
$(1, 1, 1, 1)$
$(1, 1, 1, 2)$
$(1, 1, 2, 1)$
$(1, 2, 1, 1)$
$(1, 2, 1, 2)$
$(2, 1, 1, 1)$
$(2, 1, 1, 2)$
$(2, 1, 2, 1)$

Также известно, что $T(5, 5)=246$, $T(10, 10^{2}) \equiv 862820094 \pmod{1\,000\,000\,007}$ и $T(10^2, 10) \equiv 782136797 \pmod{1\,000\,000\,007}$.

Найдите $T(5000, 10^{12}) \bmod 1\,000\,000\,007$.

Оригинал
 
© Проект Эйлера | Translated problems from ProjectEuler.net