[백준] 5585번 거스름돈
문제
문제출처 : Baekjoon
풀이
import java.util.*;
public class Main {
public int solution(int n) {
int answer = 0;
int count = 0;
int change = 1000-n; //거스름돈
int[] arr = {500,100,50,10,5,1};
while(change != 0){
for(int i = 0; i < arr.length; i++){
if(change >= arr[i]){
count = change/arr[i];
change -= arr[i]*count;
}
answer += count;
count = 0;
}
}
return answer;
}
public static void main(String[] args) {
Main function = new Main();
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
System.out.println(function.solution(n));
}
}
회고
- 에러가 나서 확인해보니
change>arr[i]
조건때문에 거스름돈이 500원 이하로 남았을때 동작하지 않았었다==;;; count=0
초기화 조건을 주는게 중요하다고 생각한다.