#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n,test,i,ans;
double t;
cin>>test;
while(test--)
{
cin>>n;
t=0;
for(i=2;i<=n;i++)
t+=log10(i*1.0);
ans=int(t)+1;
cout<<ans<<endl;
}
return 0;
}
题意:给你一个数N,让你求这个数的的阶乘的位数。
思路:123456=1.23456*10^5; log10(123456)=5.09151;
log10(1.23456*10^5)=log10(1.23456)+log10(10^5)=0.09151+5;
故int(log10(n))+1 就是n的位数