为什么这样就AC了???

P1035 [NOIP2002 普及组] 级数求和

gmy531 @ 2020-12-01 17:37:06

#include<bits/stdc++.h>
using namespace std;
int t=1;
double n,shu;
int main()
{
    cin>>n;
    while(n>=0)
    {
        n-=1.0/t;
        if(n==0){t++;cout<<t;return 0;}
        t++;
    }
    t--;
    cout<<t;
    return 0;
}

by w23c3c3 @ 2020-12-01 17:40:16

@gmy531 调和级数求和是O(\ln n)的,15以内很小,所以这样写就能过了
还想怎么样啊


by gmy531 @ 2020-12-01 17:50:39

但为什么要t--(自己瞎写的,不知道理由


by _Felix @ 2020-12-01 17:57:53

@gmy531 因为你最后多加了一个1 你模拟样例试试


by _Felix @ 2020-12-01 17:58:17

哦不对 你模拟个1.4试试


by gmy531 @ 2020-12-01 18:19:22

@_Felix 谢谢大佬,理解了


|