#P2424. 约数和

约数和

Description

For a number XX, the function f(X)f(X) denotes the sum of all divisors of XX. For example, f(6)=1+2+3+6=12f(6)=1+2+3+6=12. For a given XX, Smart can quickly compute f(X)f(X). Now, given two positive integers XX and YY (X<YX<Y), Smart wants to quickly compute the value of f(X)+f(X+1)++f(Y)f(X)+f(X+1)+\dots+f(Y). Can you help Smart compute this value?

Input Format

The input contains only one line with two positive integers XX and YY (X<YX<Y), indicating that you need to compute f(X)+f(X+1)++f(Y)f(X)+f(X+1)+\dots+f(Y).

Output Format

Output a single line containing the value of f(X)+f(X+1)++f(Y)f(X)+f(X+1)+\dots+f(Y).

2 4
14
123 321
72543

Hint

For 20%20\% of the testdata, 1X<Y1051 \leq X < Y \leq 10^5. For 60%60\% of the testdata, 1X<Y1×1071 \leq X < Y \leq 1\times 10^7. For 100%100\% of the testdata, 1X<Y2×1091 \leq X < Y \leq 2\times 10^9.

Translated by ChatGPT 5