Задача 650
Делители биномиального произведения

Положим $B(n) = \displaystyle \prod_{k=0}^n {n \choose k}$ - произведение биномиальных коэффициентов.
Например, $B(5) = {5 \choose 0} \times {5 \choose 1} \times {5 \choose 2} \times {5 \choose 3} \times {5 \choose 4} \times {5 \choose 5} = 1 \times 5 \times 10 \times 10 \times 5 \times 1 = 2500$.

Положим $D(n) = \displaystyle \sum_{d|B(n)} d$ - сумма делителей $B(n)$.
Например, делителями B(5) являются 1, 2, 4, 5, 10, 20, 25, 50, 100, 125, 250, 500, 625, 1250 и 2500,
поэтому D(5) = 1 + 2 + 4 + 5 + 10 + 20 + 25 + 50 + 100 + 125 + 250 + 500 + 625 + 1250 + 2500 = 5467.

Положим $S(n) = \displaystyle \sum_{k=1}^n D(k)$.
Известно, что $S(5) = 5736$, $S(10) = 141740594713218418$ и $S(100)$ mod $1\,000\,000\,007 = 332792866$.

Найдите $S(20\,000)$ mod $1\,000\,000\,007$.

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