分析:
题目要用到大数,但是可以转换成对数的形式,来避免大数。。。
n!<2^bit,两边同时取对数,得到:log(n)/log(2.0)<bit;
#include"stdio.h"
#include"math.h"
int main()
{
int y,i;
__int64 t;
double ans;
while(scanf("%d",&y)!=-1&&y)
{
t=(y-1960)/10+2;
t=1<<t;
//printf("%I64d\n",t);
ans=0;
i=0;
while(ans<t)
ans+=log(double(++i))/log(2.0);
printf("%d\n",i-1);
}
return 0;
}