https://www.acmicpc.net/problem/1676
1676번: 팩토리얼 0의 개수
N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.
www.acmicpc.net
>풀이
import java.util.Scanner;
/*
* 백준 1676 팩토리얼 0의 개수
* #실버5
* 23.05.03
*/
public class boj_1676 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
/*
팩토리얼에서 0의 개수는 5! 단위로 0의 개수가 한개씩 증가하는 패턴이 있다.
따라서 5로 나눠서 count를 1씩 증가하면 값을 구할 수 있다.
0! = 1
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
6! = 720
7! = 5040
8! = 40320
9! = 362880
10! = 3628800
*/
int cnt = 0;
while(N >= 5) {
cnt = cnt + N / 5;
N = N / 5;
}
System.out.println(cnt);
}
}
'PS > BOJ' 카테고리의 다른 글
백준 1996 지뢰찾기 / JAVA (0) | 2023.05.09 |
---|---|
백준 1817 짐 챙기는 숌 / JAVA (0) | 2023.05.07 |
백준 1343 폴리오미노 (0) | 2023.04.20 |
백준 5585 거스름돈 / JAVA (0) | 2023.04.19 |
백준 1331 나이트투어 / JAVA (0) | 2023.04.19 |
댓글