算术
题目背景
小 W 去上算术课了。
题目描述
> 众所周知,高斯在小学的时候,有一天他的数学老师留了一道题:$1+2+\cdots+100=?$,他认为学生们算 $100$ 个数相加要算很久,然后就准备溜去喝咖啡,但是这个时候高斯却举手说他算完了——他用了我们今天众所周知的等差数列求和公式。
但是,这个算术课的老师就像高斯的老师一样不负责任,他在黑板上留了一道算术题就溜去泡妹子了。但小 W 可没高斯那么聪明,而且这个式子看起来没有巧算方法。于是,他通过电话联系上了学 $\text{OI}$ 的你,希望你给他帮助。作为回报,他会给你 $100$ 分作为奖励。
具体来讲,黑板上的式子是这样的:
设 $n$ 的质因数分解结果为 $n=\prod\limits_{i=1}^kp_i^{\alpha_i}$,则定义 $f(n)=\prod\limits_{i=1}^k{\dfrac{p_i^{\alpha_i+1}-1}{p_i^{\alpha_i+1}-p_i^{\alpha_i}}}$,求 $\sum\limits_{i=1}^nf(i)$ 的值(精度要求参见提示与说明)。
**注意:特别地,我们定义** $f(1)=1$。
输入输出格式
输入格式
一行一个整数 $n$,意义如上。
输出格式
一行一个实数表示结果。
输入输出样例
输入样例 #1
2
输出样例 #1
2.5000000000
输入样例 #2
5
输出样例 #2
6.7833333333
说明
样例二解释:$f(1)=1,f(2)=\dfrac{2^2-1}{2^2-2^1}=1.5,f(3)=\dfrac{3^2-1}{3^2-3^1}=1.3333333333,f(4)=\dfrac{2^3-1}{2^3-2^2}=1.75,f(5)=\dfrac{5^2-1}{5^2-5^1}=1.2$。
********
本题带有 $\text{SPJ}$。设你的答案为 $a$,标准答案为 $b$。
如果 $ |{a-b}|\le \min(\dfrac b{10^4},10) $,则获得这个测试点的所有分数;
否则,如果$|{a-b}|\le \min(\dfrac b{10^3},100)$,则获得这个测试点的分数的 $40\%$;
否则,你将不会获得任何分数。
标准答案将会保留 10 位小数。
**注意:虽然此题对精度要求较低,但仍建议用更为精确的`long double`存储答案。**
********
数据范围:
对于 $10\%$ 的数据,$n\le10$。
对于 $30\%$ 的数据,$n\le10^3$。
对于 $60\%$ 的数据,$n\le10^7$。
对于 $100\%$ 的数据,$1\le n\le10^{13}$。