【题目来源】
【题目描述】
若 x 分解质因数结果为 x=(p1^k1)×(p2^k2)×……×(pn^kn),令 f(x)=(k1+1)(k2+1)⋯(kn+1),求 ∑f(i) 对 998244353 取模的结果(其中,i=l~r)。
【输入格式】
输入只有一行两个整数,分别表示 l 和 r。
【输出格式】
输出一行一个整数表示答案。
【输入样例】
2 4
【输出样例】
7
【数据范围】
1≤l≤10^14,l≤r≤1.6×10^14,r−l>10^14。
【算法分析】
● 整数分块算法:
● 若 x=(p1^k1)×(p2^k2)×……×(pn^kn),则 f(x)=(k1+1)(k2+1)⋯(kn+1) 实际上就是 x 的约数个数。而约数个数和的经典公式为 ∑f(i)=∑⌊n/i⌋,其中 i=1~n。
● 约数个数定理:
【算法代码】
【参考文献】