728x90
반응형
문제 링크 : www.acmicpc.net/problem/5585
5585번: 거스름돈
타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사
www.acmicpc.net
풀었던 답
import java.util.Scanner;
class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
int fiveH = 500;
int oneH = 100;
int fiveT = 50;
int ten = 10;
int five = 5;
int one = 1;
int count = 0; //거스름돈의 개수
int exchange; //거스름돈 액수
int price; //물건 가격 (입력 받을 변수)
Scanner scan = new Scanner(System.in);
price = scan.nextInt();
exchange = 1000 - price;
while(true) {
if(exchange / fiveH >= 1) {
//잔돈이 500엔으로 나눠지는경우
count = count + (exchange / fiveH);
exchange = exchange % fiveH;
}else if(exchange / oneH >= 1) {
//잔돈이 100엔으로 나눠지는경우
count = count + (exchange / oneH);
exchange = exchange % oneH;
}else if(exchange / fiveT >= 1) {
//잔돈이 50엔으로 나눠지는경우
count = count + (exchange / fiveT);
exchange = exchange % fiveT;
}else if(exchange / ten >= 1) {
//잔돈이 10엔으로 나눠지는경우
count = count + (exchange / ten);
exchange = exchange % ten;
}else if(exchange / five >= 1) {
//잔돈이 5엔으로 나눠지는경우
count = count + (exchange / five);
exchange = exchange % five;
}else {
//잔돈이 1엔으로 나눠지는경우
count = count + (exchange / one);
exchange = exchange % one;
}
if(exchange == 0) {
//다 나눠지고 잔돈이 0원이 남았을 때 반복문 브레이크
break;
}
}
//반복분 출력
System.out.println(count);
}
728x90
반응형
'Algorithm' 카테고리의 다른 글
[백준 1018] 체스판 다시 칠하기 (1) | 2024.02.17 |
---|---|
백준 [27866] 문자와 문자열 - Java (1) | 2024.02.14 |
백준[10250] ACM 호텔 - Java (0) | 2024.02.14 |
백준[11660] 구간 합 구하기 5 (0) | 2023.02.05 |
백준[11659] - 구간 합 구하기 4 (0) | 2022.12.30 |