输入N求N的阶乘的10进制表示的长度。例如6! = 720,长度为3。
Input
输入N(1 <= N <= 10^6)
Output
输出N的阶乘的长度
Sample Input
6
Sample Output
3
一、任意数的长度公式:给一个数X,len=log10(X)+1就是X这个数的长度
N!=sqrt(2*pi*N)*(N/e)^N;(pi=3.1415926=acos(-1.0),e=2.718)
java中用io输入的BigDecimal超时了,没办法死记好了
JAVA:
import java.util.Scanner;
public class Main {
public static void main(String []ages)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int len = (int) (0.5*Math.log10(2*n*Math.PI)+n*Math.log10(n/Math.E)+1);
System.out.println(len);
}
}