📌문제
(요약)
거스름돈의 액수가 주어지면 리암이 줘야할 쿼터(Quarter, $0.25)의 개수, 다임(Dime, $0.10)의 개수, 니켈(Nickel, $0.05)의 개수, 페니(Penny, $0.01)의 개수를 구하는 프로그램을 작성하시오. 거스름돈은 항상 $5.00 이하이고, 손님이 받는 동전의 개수를 최소로 하려고 한다. 예를 들어, $1.24를 거슬러 주어야 한다면, 손님은 4쿼터, 2다임, 0니켈, 4페니를 받게 된다.
입력
첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 거스름돈 C를 나타내는 정수 하나로 이루어져 있다. C의 단위는 센트이다. (1달러 = 100센트) (1<=C<=500)
출력
각 테스트케이스에 대해 필요한 쿼터의 개수, 다임의 개수, 니켈의 개수, 페니의 개수를 공백으로 구분하여 출력한다.
예제 입력)
3
124
25
194
예제 출력)
4 2 0 4
1 0 0 0
7 1 1 4
📌답
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int t = Integer.parseInt(br.readLine());
int c = 0;
int[] ch = new int[8];
ch[0] = 25; ch[1] = 10; ch[2] = 5; ch[3] = 1;
for(int i = 0; i<t; i++) {
c = Integer.parseInt(br.readLine());
ch[4] = c / ch[0];
c = c % ch[0];
ch[5] = c / ch[1];
c = c % ch[1];
ch[6] = c / ch[2];
c = c % ch[2];
ch[7] = c;
sb.append(ch[4]+ " " + ch[5]+ " " + ch[6]+" " + ch[7] +"\n");
}
System.out.println(sb);
}
}
끝까지 읽어주셔서 감사합니다 :)
Have a good day🐱
📢
1. 개발자 준비생이 공부한 내용을 정리한 글입니다. 내용에 오류가 있을 수 있습니다.
2. 위와 같은 이유로 내용에 대한 지적과 조언은 감사하게 받습니다.
3. 이 글의 내용은 계속 공부함으로써 언제든지 추가/수정 될 수 있습니다.
'Coding Test > 백준 - JAVA' 카테고리의 다른 글
백준 2292번 벌집 (JAVA) (0) | 2024.12.26 |
---|---|
백준 2903번 중앙 이동 알고리즘 (JAVA) (0) | 2024.12.23 |
백준 티어(내 티어/문제 티어) 보는 법 (0) | 2024.12.23 |
백준 11005번 진법 변환2 (JAVA) (0) | 2024.12.22 |
백준 2745 진법 변환 (JAVA) (0) | 2024.12.22 |