hye-log

[백준]1676번 팩토리얼 0의 개수(JAVA) 본문

CodingTest/Baekjoon

[백준]1676번 팩토리얼 0의 개수(JAVA)

iihye_ 2023. 8. 18. 18:16

0. 문제 링크

https://www.acmicpc.net/problem/1676

 

1676번: 팩토리얼 0의 개수

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

www.acmicpc.net

 

1. 문제 설명

1) N! 에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수 구하기

 

2. 입출력

// input
10

// output
2

 

3. 코드

import java.util.Scanner;

public class b1676 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int ans = 0;

		while(N >= 5) { // N이 5보다 클 때까지 나누기
			ans = ans + N / 5;
			N = N / 5;
		}
		
		System.out.println(ans);
	}
}

 

실행 결과

 

4. 회고

1) 주어진 입출력만 보고 팩토리얼을 직접 구현해서 0을 세고 있었는데... N의 크기를 보니 그게 아니였다

2) 팩토리얼에서 0이 생기는 경우는 5를 곱할 때이므로 5를 나누면서 0의 개수를 count했다

 

5. Github

 

728x90
Comments