팩토리얼 값이 long으로도 감당?할수 없어서 BigInteger클래스를 사용한다.

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.math.BigInteger; public class Main { public static void main(String[] args) throws IOException{ BufferedReader reader=new BufferedReader(new InputStreamReader(System.in)); int n=Integer.parseInt(reader.readLine()); BigInteger result=new BigInteger("1"); for(long i=1;i<=n;i++){ result=result.multiply(BigInteger.valueOf(i)); } String a=String.valueOf(result); long count=0; for(int i=a.length()-1;i>0;i--){ if(a.charAt(i)=='0'){ count++; }else{ break; } } System.out.println(count); } }


+ Recent posts