uva UVA - 1091610916
2014-05-01 16:50
381 查看
一开始把题目的范围看错了。。搞的我弄高精度。。写死我去了。。后来发现原来只要一点小小的技巧就可以。。直接比较俩数的长度就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; }
相关文章推荐
- UVa 10078 - The Art Gallery
- uva10256 凸包
- UVA - 11462 Age Sort
- UVa 10161 - Ant on a Chessboard
- uva 10827(循环矩阵最大连续子矩阵和)
- UVA 1641 POJ 4022 ASCII Area
- UVALive 3713 Astronauts (2-SAT,变形)
- uva 120——Stacks of Flapjacks
- ACM: uva 1069 -&n…
- UVA - 11572 Unique Snowflakes
- S-Trees UVA - 712
- 【UVA1428】Ping pong
- UVA-11729 - Commando War
- uva 10051
- UVALive6442_Coins on a Ring
- UVa 10494 - If We Were a Child Again
- UVA - 10300 Ecological Premium
- UVA All in All(水题)
- uva 104 arbitrage(套利)
- 例题4-1 UVa1339 Ancient Cipher