题目链接:访问此处~~
题目要求根据给定的n值,计算n的阶乘结果的位数。
#include #include const double Pi = acos(-1.0);int calculate_digit_count(int n){ if(n == 1) return 1; return ceil((n * (log(n) - 1) + 0.5 * log(2 * Pi * n)) / log(10));}int main(){ int cases, number; scanf("%d", &cases); while(cases--) { scanf("%d", &number); printf("%d\n", calculate_digit_count(number)); } return 0;}