• 문제 링크
11170번: 0의 개수
N부터 M까지의 수들을 종이에 적었을 때 종이에 적힌 0들을 세는 프로그램을 작성하라. 예를 들어, N, M이 각각 0, 10일 때 0을 세면 0에 하나, 10에 하나가 있으므로 답은 2이다.
www.acmicpc.net
• 풀이 코드
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws IOException {
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb = new StringBuilder();
int t = read();
while (t-- > 0) {
int n = read(), m = read() + 1, cnt = 0;
while (n < m) cnt += contains(n++);
sb.append(cnt).append("\n");
}
bw.write(sb.toString());
bw.flush();
}
private static int contains(int n) {
int cnt = 0;
do if (n % 10 == 0) cnt++; while ((n /= 10) > 0);
return cnt;
}
private static int read() throws IOException {
int c, n = System.in.read() & 15;
while ((c = System.in.read()) > 32) n = (n << 3) + (n << 1) + (c & 15);
return n;
}
}
'Problem Solving > Baekjoon' 카테고리의 다른 글
[백준] 2160 그림 비교 - Brute Force / Java (0) | 2023.08.28 |
---|---|
[백준] 4641 Doubles - Brute Force / Java (0) | 2023.08.27 |
[백준] 27961 고양이는 많을수록 좋다 - Greedy / Java (0) | 2023.08.25 |
[백준] 2930 가위 바위 보 - Greedy / Java (0) | 2023.08.24 |
[백준] 28063 동전 복사 - Greedy / Java (0) | 2023.08.23 |
댓글