코딩테스트

백준 5585

KUROMI98 2023. 2. 1. 14:40

https://www.acmicpc.net/problem/5585

 

5585번: 거스름돈

타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사

www.acmicpc.net

 

// 1. 화폐 단위를 담은 리스트를 만든다. 
// 2. for문 돌린다.
// 3. change를 화폐 단위로 나누고 // (1)몫을 cnt에 추가하고 (2)  나머지를 change에 다시 넣는다.
// 4. 반복한다. 

function solution(n) // n원을 지불했을 때
{
    var arr = [500, 100, 50, 10, 5, 1];
    var change = 1000-n; // 거스름돈 change는 1000엔 - 지불한 돈
    var count = 0;

    for(i=0; i<arr.length; i++)
    {
        count += Math.floor(change/arr[i]) // 거스름돈을 arr[i]로 나눈 몫을 cnt에 추가한다.
        change = change%arr[i]; // 거스름돈을 arr[i]로 나눈 나머지를 거스름돈에 다시 넣는다.
    }
    console.log(count);

}

solution(1)