洛谷——P1035 级数求和——简单

题目描述

已知: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足够大的时候,SnS_nSn​大于KKK。

现给出一个整数KKK(1≤k≤151 \le k \le 151≤k≤15),要求计算出一个最小的nnn;使得Sn>KS_n>KSn​>K。

输入输出格式

输入格式:

 

一个正整数KKK

 

输出格式:

 

一个正整数NNN

 

输入输出样例

输入样例#1: 复制

1

输出样例#1: 复制

2

这个题并不是很难 ,思路也不难想,那么话不多说,上代码吧=w=

#include
 

int main( )
{
    int n;
    scanf("%d",&n);
    int i;
    double sum=0;
    for(i=1;;i++)
    {
        sum+=1.0/i;
        if(sum>n)//当符合条件的时候跳出循环
        {
            printf("%d",i);
            break;
        }
    } 
    
    

 

——李佳胥 

你可能感兴趣的:(ACM)