1119. Factstone Benchmark |
||
Time Limit: 1sec Memory Limit:32MB Description Amtel has announced that it will release a 128-bit computer chip by 2010, a 256-bit computer by 2020, and so on, continuing its strategy of doubling the word-size every ten years. (Amtel released a 64-bit computer in 2000, a 32-bit computer in 1990, a 16-bit Amtel will use a new benchmark - the Factstone - to advertise the vastly improved capacity of its new chips. The Factstone rating is defined to be the largest integer n such that n! can be represented as an unsigned integer Input Given a year 1960 ≤ y ≤ 2160, what will be the Factstone rating of Amtel‘s most recently released chip? Output There are several test cases. For each test case, there is one line of input containing y. A line containing 0 follows the last test case. For each test case, output a line giving the Factstone rating. Sample Input Copy sample input to clipboard 1960 1981 0 Sample Output 3 8 |
||
Status Submit Source Code // Problem#: 1119 // Submission#: 3731244 // The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License // URI: http://creativecommons.org/licenses/by-nc-sa/3.0/ // All Copyright reserved by Informatic Lab of Sun Yat-sen University #include<iostream> #include<cmath> #include<cstdio> #include<algorithm> int main(){ int year; int endflag; int n; double sum; while(scanf("%d", &year) && year){ endflag = pow(2, (year - 1960) / 10 + 2); n = 2; sum = 0; while(sum <= endflag){ sum += log(n) / log(2); ++n; } printf("%d\n", n - 2); } return 0; } |