标签:hdu1018 big number 数论
2 10 20
7 19
#include <stdio.h>
#include <math.h>
#define MAX 10000010
int main()
{
int t ;
scanf("%d",&t) ;
while(t--)
{
int n ;
double ans = 0.0 ;
scanf("%d",&n) ;
for(int i = 1 ; i <= n ; ++i)
{
ans += log10((double)i) ;
}
printf("%d\n",(int)ceil(ans)) ;
}
return 0 ;
}#include <stdio.h>
#include <math.h>
#define M_E 2.7182818284590452354
#define M_PI 3.14159265358979323846
int main()
{
int t ;
scanf("%d",&t) ;
while(t--)
{
double n ;
scanf("%lf",&n) ;
int ans ;
if(n == 1)
{
ans = 1.0 ;
}
else
{
ans = (int)ceil(0.5*log10(2*M_PI*n)+n*log10(n)-n*log10(M_E)) ;
}
printf("%d\n",ans) ;
}
return 0 ;
}hdu 1018 Big Number 两种方法 log方法(300+ms)+斯特林公式(0+ms)
标签:hdu1018 big number 数论
原文地址:http://blog.csdn.net/lionel_d/article/details/44177719