백준 1676 - 팩토리얼 0의 개수
Updated:
Java
1676 번 - 팩토리얼 0의 개수
문제
N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.
접근 방법
코드
import java.util.*;
import java.io.*;
public class Main {
static int n, result;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
n = stoi(br.readLine());
int count = 0;
int num = 1;
for(int i = 2; i <= n; i++) {
num *= i;
// 제일 뒷 자리가 0일 때
if(num % 10 == 0) {
while(num % 10 == 0) {
count++;
num /= 10;
}
}
else {
num %= 1000; // N의 수가 늘어나면, modulo 수도 늘려야 한다.
}
}
System.out.println(count);
br.close();
}
static int stoi(String str) {
return Integer.parseInt(str);
}
}
총평
후기
개선할 점
없습니다.