[国家集训队] Crash的数字表格 / JZPTAB
题目描述
今天的数学课上,Crash 小朋友学习了最小公倍数(Least Common Multiple)。对于两个正整数 $a$ 和 $b$,$\text{lcm}(a,b)$ 表示能同时被 $a$ 和 $b$ 整除的最小正整数。例如,$\text{lcm}(6, 8) = 24$。
回到家后,Crash 还在想着课上学的东西,为了研究最小公倍数,他画了一张 $ n \times m$ 的表格。每个格子里写了一个数字,其中第 $i$ 行第 $j$ 列的那个格子里写着数为 $\text{lcm}(i, j)$。
看着这个表格,Crash 想到了很多可以思考的问题。不过他最想解决的问题却是一个十分简单的问题:这个表格中所有数的和是多少。当 $n$ 和 $m$ 很大时,Crash 就束手无策了,因此他找到了聪明的你用程序帮他解决这个问题。由于最终结果可能会很大,Crash 只想知道表格里所有数的和对 $20101009$ 取模后的值。
输入输出格式
输入格式
输入包含一行两个整数,分别表示 $n$ 和 $m$。
输出格式
输出一个正整数,表示表格中所有数的和对 $20101009$ 取模后的值。
输入输出样例
输入样例 #1
4 5
输出样例 #1
122
说明
#### 样例输入输出 1 解释
该表格为:
|$1$|$2$|$3$|$4$|$5$|
|:-:|:-:|:-:|:-:|:-:|
|$2$|$2$|$6$|$4$|$10$|
|$3$|$6$|$3$|$12$|$15$|
|$4$|$4$|$12$|$4$|$20$|
#### 数据规模与约定
- 对于 $30\%$ 的数据,保证 $n, m \le 10^3$。
- 对于 $70\%$ 的数据,保证 $n, m \le 10^5$。
- 对于 $100\%$ 的数据,保证 $1\le n,m \le 10^7$。