Post

🧩 Baekjoon 1676 - νŒ©ν† λ¦¬μ–Ό 0의 개수

🧩 Baekjoon 1676 - νŒ©ν† λ¦¬μ–Ό 0의 개수

문제

N!μ—μ„œ λ’€μ—μ„œλΆ€ν„° 처음 0이 μ•„λ‹Œ μˆ«μžκ°€ λ‚˜μ˜¬ λ•ŒκΉŒμ§€ 0의 개수λ₯Ό κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

μž…λ ₯

첫째 쀄에 N이 μ£Όμ–΄μ§„λ‹€. (0 ≀ N ≀ 500)

좜λ ₯

첫째 쀄에 κ΅¬ν•œ 0의 개수λ₯Ό 좜λ ₯ν•œλ‹€.

예제

βœ… μž…λ ₯ 1

1
10

βœ… 좜λ ₯ 1

1
2

βœ… μž…λ ₯ 2

1
3

βœ… 좜λ ₯ 2

1
0

μž‘μ„± μ½”λ“œ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import java.io.BufferedReader;  
import java.io.IOException;  
import java.io.InputStreamReader;  
  
public class Main {  
    public static void main(String[] args) throws IOException {  
        // 1. λ³€μˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™”  
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));  
        int n = Integer.parseInt(br.readLine());  
        int count = 0;  
        
        // 2. 계산  
        for (int i = 5; i <= n; i *= 5) count += n / i;  
        
        // 3. 좜λ ₯  
        System.out.println(count);  
    }  
}
  • 문제의 관건은 νŒ©ν† λ¦¬μ–Ό κ°’ λ‚΄ 5의 개수λ₯Ό μ°ΎλŠ” 것이닀.
  • κ΅¬ν˜„μ€ κ°„λ‹¨ν•˜μ§€λ§Œ 끝자리 0의 개수λ₯Ό μ„ΈκΈ° μœ„ν•΄μ„œλŠ” 10의 개수λ₯Ό μ„Έμ•Ό ν•˜κ³ , 2λŠ” μΆ©λΆ„νžˆ λ§ŽμœΌλ―€λ‘œ 5의 개수만 μ„Έλ©΄ ν•΄κ²°ν•  수 μžˆλ‹€λŠ” 점을 μ‚¬κ³ ν•˜κΈ°κ°€ μ–΄λ €μ› λ‹€.
This post is licensed under CC BY 4.0 by the author.