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

차누·2023년 9월 6일
0

실버 5문제이다

문제

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

입력

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

출력

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

풀이방법

입력박은 N을 5로 나누어 0의 자리가 나올 때까지 계속 반복해주면 된다.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.StringTokenizer;

public class backjoon{
	
	public static void main(String[] args) throws IOException {
		

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int num = Integer.parseInt(br.readLine());
		
		int count = 0;
		
		while(num >= 5) {

			count += num / 5;
			num /= 5;
				
		}
		
		System.out.println(count);
		
			}
	}

후기

처음엔 문제가 이해되지 않아 1시간 넘게 고민을 한 결과 0이 될 때 2랑 5가 나온다. 그 결과
5로 나눌때마다 카운터를 증가하면 쉽게 문제를 해결할 수 있다.

profile
to be good programmer

0개의 댓글