思路:这题可以用一个while循环,定义一个sum表示当前分数之和,i表示当前级数。当sum<k时,一直让i++,每次sum加上1.0/i。但是要注意数据类型哦!
AC代码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
double k,sum=0,ans,i=0;
cin>>k;
while(sum<=k)
{
i++;
sum+=1.0/i;
}
cout<<i<<endl;
return 0;
}
这题是NOIP里比较简单的一题,相信大家应该都可以做出来,一定要注意一些小细节。比如这题的数据类型。永远牢记一句话:“细节决定成败”!