1774 - 级数求和
已知:Sn= 1+1/2+1/3+…+1/n。显然对于任意一个整数K,当n足够大的时候,Sn大于K。
现给出一个整数K(1<=k<=15),要求计算出一个最小的n;使得Sn>K。
Input
键盘输入 k
Output
屏幕输出 n
Examples
Input
1
Output
2
Solution C++
#include <iostream> #include <fstream> using namespace std; int n; ifstream fin("p1.in"); ofstream fout("p1.out"); double k, s = 0.0; //#define cin fin //#define cout fout main() { cin >> k; fin.close(); for (n = 1; s <= k; ++n) s += 1.0 / (double)n; cout << --n; fout.close(); // for(;;); }