@LinKArftc
2015-10-21T19:40:29.000000Z
字数 250
阅读 1247
数学
数论
斯特林数能够做一切关于阶乘有关的大数运算 要深入学习!
这里给出递归公式:
log10(n!)=1.0/2*log10(2*pi*n)+n*log10(n/e)
求一个数阶乘的位数
int main() {
int T, n;
scanf("%d", &T);
while (T --) {
scanf("%d", &n);
if (n == 1) printf("1\n");
else printf("%d\n", (int)(0.5*log10(2*PI*n)+n*log10(n/e)+1));
}
return 0;
}