Points:
1600 (p)
Time limit:
1.0s
Memory limit:
1023M
Input:
stdin
Output:
stdout
Sau một ngày ăn chơi sa đọa, Huy quên mất mình cần phải làm bài tập về nhà của thầy Small. Bài tập đó như sau
\(“\) Gọi \(F_i\) là tổng các ước nguyên dương của \(i\). Cho hai số \(L\), \(R\) hãy tính \(S= F_L + F_{L+1} + F_{L+2} +…+ F_R ”\).
Vì không muốn phải nộp phạt, nên Huy đã nhờ bạn giải quyết bài tập trên.
Input
- Một dòng duy nhất gồm 2 số nguyên dương \(L\) và \(R\) \((L \leq R \leq 10^{12})\)
Output
- Gồm 1 dòng duy nhất là kết quả được tính theo modulo \(10^9 + 7\).
Scoring
- Subtask \(1\) (\(60\%\) số điểm): \(L \leq R \leq 10^6\)
- Subtask \(2\) (\(20\%\) số điểm): \(L \leq R \leq 10^{12} ; R-L \leq 10^6\)
- Subtask \(3\) (\(20\%\) số điểm): \(L \leq R \leq 10^{12}\)
Example
Test 1
Input
101 101
Output
102
Test 1
Input
1 10
Output
87
Test 1
Input
987654456799 987654456799
Output
654449891
Comments