利用数学公式(斯特林公式:lnN!=NlnN-N+0.5*ln(2*N*pi))求出位数即可
#include"stdio.h" #include"math.h" #define pi 3.1415926 int main() { int ans,i,t,n; scanf("%d",&t); while(t--) { scanf("%d",&n); ans=(n*log(n)-n+0.5*log(2*n*pi))/log(10); ans+=1; printf("%d\n",ans); } return 0; }