[백준] 1676. 팩토리얼 0의 개수 _ Java

jii0_0·2023년 1월 18일
0

Beakjoon Online Judge

목록 보기
19/22
post-thumbnail

팩토리얼 0의 개수 (Silver V)

문제 링크

문제 설명

N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500)

출력

첫째 줄에 구한 0의 개수를 출력한다.

문제 풀이

  • 2*5 개수를 구하면 되겠다 싶어서 첨엔 배열로 2랑 5의 배수를 하나씩 구해서 Math.min 했는데 생각해보니까 2의배수가 5의 배수보다 많으니까 그냥 5의 배수를 구하면 되는 거였다.

Solution

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int five = 0; // 5의배수, 2*5 배수 세야하는데 5가 더 적게나오니까 5만 세도 됨
		for (int i = 2; i <= n; i++) {
			int temp = i;
			while (temp % 5 == 0) {
				five++;
				temp /= 5;
			}
		}
		System.out.println(five);
	}

}
profile
느려도 꾸준히

0개의 댓글