1087:级数求和
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 32847 通过数: 14813
【题目描述】
已知:Sn=1+1/2+1/3+…+1/n。显然对于任意一个整数k,当n足够大的时候,Sn大于k。现给出一个整数k(1≤k≤15),要求计算出一个最小的n,使得Sn>k。
【输入】
一个整数k。
【输出】
一个整数n。
【输入样例】
1
【输出样例】
2
思路:循环分母每次加1一直到s>k
#include <bits/stdc++.h>
using namespace std;
int main(){
int n = 1;
double s = 1,k;
cin >> k;
while(s <= k){
++n;
s += 1.00 / n;
}
cout << n << endl;
return 0;
}