• 문제 링크
5585번: 거스름돈
타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사
www.acmicpc.net
• 풀이 과정
주어진 동전의 큰 값부터 입력값 n로 나눌 수 있다면,
해당 몫을 res 변수에 누적하고 n 은 그 나머지로 갱신한다.
모든 동전에 대해 위와 같은 과정을 거친 후 구해진 잔돈의 개수 res 를 정답으로써 출력한다.
• 풀이 코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = 1000 - Integer.parseInt(br.readLine());
int[] coins = {500, 100, 50, 10, 5, 1};
int res = 0;
for (int coin : coins) {
if (n / coin != 0) {
res += n / coin;
n %= coin;
}
}
bw.write(String.valueOf(res));
bw.flush();
}
}
'Problem Solving > Baekjoon' 카테고리의 다른 글
[백준] 11501 주식 - Greedy / Java (0) | 2022.11.15 |
---|---|
[백준] 10162 전자레인지 - Greedy / Java (0) | 2022.11.14 |
[백준] 1026 보물 - Greedy / Java (0) | 2022.11.12 |
[백준] 2839 설탕 배달 - Greedy / Java (0) | 2022.11.11 |
[백준] 9251 LCS - Dynamic Programming / Java (0) | 2022.11.10 |
댓글