728x90
문제
N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500)
출력
첫째 줄에 구한 0의 개수를 출력한다.
풀이
연산에서 마지막에 0이 나오기 위해서는 2*5가 만족해야한다.
2는 2,4,6... 등 무수히 많기에 5의 갯수만 세면 0의 갯수를 파악할 수 있다.
코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int cnt = 0;
for (int i = 1; i <= n; i++) {
int t=i;
while (t % 5 == 0) {
cnt++;
t /= 5;
}
}
System.out.println(cnt);
}
}
728x90
728x90
'Algorithm > Baekjoon' 카테고리의 다른 글
Baekjoon 1193 분수찾기 JAVA (0) | 2022.01.27 |
---|---|
Baekjoon 11723 집합 JAVA (0) | 2022.01.27 |
Baekjoon 1996 지뢰 찾기 JAVA (0) | 2022.01.27 |
Baekjoon 2755 이번학기 평점은 몇점? JAVA (0) | 2022.01.27 |
Baekjoon 2167 2차원 배열의 합 JAVA (0) | 2022.01.27 |
댓글