题目描述
已知:Sn=1+1/2+1/3+...+1/n。显然对于任意一个整数k,当n足够大的时候,Sn大于K。现在给出一个整数k(1<= k<=15),要求计算出一个最小的n,使得Sn >k。
输入
一个整数k(1<= k<=15)
输出
一个整数n。
样例输入 复制
1
样例输出 复制
2
提示
如果通不过,考虑一下数据类型。
//非常实用的一段代码
//本人非常满意
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int k;
cin>>k;
long int i; //害怕范围超限
double sum=0; //必须是浮点数设定
for(i=1;i<10000000;i++)
{
sum+=1.0/i;
if(sum>k)
{
cout<<i;
break;
}
}
return 0;
}
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务