N - Harmonic Number
题意
h(n)=1/1+1/2+……+1/n;n<=1e8
做法(2种)
对应两个代码 1.分层打表:每50/100个记录一次,查的时候再接着算 2.调和级数近似公式:前1e4打表,后面的调和级数近似公式(因为此公式只适用于n很大的情况)
关键词
基础数论、调和级数近似公式、分层打表、欧拉常数
易错点
- //lf->double 不是llf
- //cmath 中log就是ln
- 直接用int/long long扩大倍数打表
工具箱
- doubl&%lf https://blog.csdn.net/weixin_46585199/article/details/119044763
- 调和级数近似公式:f(n)=ln(n)+r+1.0/(2*n),r是欧拉常数 //注意:此公式只适用于n很大的情况。
- #define r 0.57721566490153286060651209//欧拉常数