Vijos P1127 级数求和【数列】

描述

已知:Sn= 1+1/2+1/3+…+1/n。显然对于任意一个整数K,当n足够大的时候,Sn大于K。

现给出一个整数K(1<=k<=15),要求计算出一个最小的n;使得Sn>K。

格式

输入格式

输入 k

输出格式

输出 n

样例1

样例输入1

1

样例输出1

2

限制

每个测试点1s

来源

noip2002普及组第一题


问题链接Vijos P1127 级数求和

问题分析:简单的求和比较问题。

程序说明:需要注意类型。

题记:(略)


参考链接:(略)


AC的C++程序如下:

#include <iostream>

using namespace std;

int main()
{
    int k;
    long n = 0;
    double sum = 0;

    cin >> k;
    while(sum <= k) {
        n++;
        sum += 1 / (double) n;
    }

    cout << n << endl;

    return 0;
}








原文地址:https://www.cnblogs.com/tigerisland/p/7563709.html