uva UVA - 1091610916

来源:互联网 发布:java好用的分页插件 编辑:程序博客网 时间:2024/05/16 14:42
一开始把题目的范围看错了。。搞的我弄高精度。。写死我去了。。后来发现原来只要一点小小的技巧就可以。。直接比较俩数的长度就OK。。因为他们不可能相等 概率太小了。。根据函数的增长特性。。直接通过长度比较可以求出n的大小。。
#include<iostream>#include<cmath>using namespace std;int main(){    long long  n;    while(cin>>n)    {        if(n==0)break;        n=(n-1960)/10+2;        double flag1=pow(2.0,n+0.0)*log10(2.0);        double flag2=0.0;        for(int i=1;;i++)        {            flag2+=log10(i+0.0);            if(flag2>flag1)            {                cout<<i-1<<endl;                break;            }        }    }    return 0;}

0 0
原创粉丝点击