본문 바로가기
JAVA

JAVA - 동전의 사용 개수를 구하는 문제 (500,100,50,10원)

by 스노위13 2022. 5. 24.

동전의 사용 개수를 구해봅시다. 

1. 문제 조건
어떤 값이 입력되면 그 값을 500,100,50,10원 동전 개수를 최소한으로 표현하려고 할 때 각 동전을 사용한 개수가 몇 개인지를 구하는 문제
예시 : 입력 2760 -> 출력 :: 500원 : 5개 , 100원 2개, 50원 1개, 10원 1개

2. 코드 
int[] coins = {500,100,50,10}에 사용할 동전 종류를 큰 숫자부터 넣어 배열을 만들고  나누기와 나머지를 활용하여 구현한다. 만약 더 작은 숫자의 동전을 넣으려면 이곳에 추가로 넣어주면 된다. 
나머지를 이용해서 동전이 필요한 갯수를 구한 다음 나머지 값은 다음 크기의 동전에게 넘겨 주기를 반복한다. 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Scanner sc = new Scanner(System.in);
System.out.print("입력 ");
int n = Integer.parseInt(sc.nextLine());
 
int[] coins = {500,100,50,10};
int[] result = new int [coins.length];
 
for(int i = 0; i < coins.length ; i++){
    result[i] += n / coins[i];
    n = n % coins[i];
}
 
for(int i = 0; i < coins.length ; i++) {
    if(i != coins.length-1) {
        System.out.print(coins[i] + "원 : " + result[i] + "개, ");
    }else {
        System.out.print(coins[i] + "원 : " + result[i] + "개");
    }
}    
cs

3. 결과

 

댓글