P1035 [NOIP2002 普及组] 级数求和
题目描述
已知:Sn=1+1/2+1/3+…+1/nS_n= 1+1/2+1/3+…+1/nSn=1+1/2+1/3+…+1/n。显然对于任意一个整数 kkk,当 nnn 足够大的时候,Sn>kS_n>kSn>k。
现给出一个整数 kkk,要求计算出一个最小的 nnn,使得 Sn>kS_n>kSn>k。
输入格式
一个正整数 kkk。
输出格式
一个正整数 nnn。
输入输出样例
输入 #1
1
输出 #1
2
说明/提示
【数据范围】
对于 100%100%100% 的数据,1≤k≤151\le k \le 151≤k≤15。
【题目来源】
NOIP 2002 普及组第一题
#include <iostream>
using namespace std;
int main(){
double k;
cin>>k;
double sum;
for(int i=1;;i++)
{
sum+=(1.0/i);
if(sum>k)
{
cout<<i;
break;
}
}
return 0;
}