SG의 개발 공부로그

아이스 아메리카노 [프로그래머스 코딩테스트 자바스크립트] 본문

CodingTest

아이스 아메리카노 [프로그래머스 코딩테스트 자바스크립트]

DebeloperSG 2023. 2. 6. 23:28
728x90

아이스 아메리카노

 

문제 설명

머쓱이는 추운 날에도 아이스 아메리카노만 마십니다. 

아이스 아메리카노는 한잔에 5,500원입니다.

머쓱이가 가지고 있는 돈 money가 매개변수로 주어질 때,

머쓱이가 최대로 마실 수 있는 아메리카노의 잔 수와 남는 돈을 순서대로 담은 배열을 

return 하도록 solution 함수를 완성해 보세요.

 

 

 

제한사항

  • 0 < money ≤ 1,000,000

 

 

입출력 예

money result
5,500 [1, 0]
15,000 [2, 4000]

 

 

 

입출력 예 설명

입출력 예 #1

  • 5,500원은 아이스 아메리카노 한 잔을 살 수 있고 잔돈은 0원입니다.

입출력 예 #2

  • 15,000원은 아이스 아메리카노 두 잔을 살 수 있고 잔돈은 4,000원입니다.

 

 

풀이

현재 가지고 있는 돈에서 5500원을 나누면 나머지값이 나오는데 parseInt로 소수점은 버린다.

그 나머지값을 %로 구한다.

배열로 return 해줘야 해서 각각 push로 넣어주었다.

function solution(money){
    let answer = [];
    answer.push(parseInt(money / 5500))
    answer.push(money % 5500)

    return answer
}

 

바로 배열로 return 할 수도 있다.

function solution(money) {
    return [Math.floor(money / 5500), money % 5500];
}

 

 

다른 풀이

반복문을 활용해서 풀이한 방식이다.

money가 5500보다 이상이면 계속 돌면서 증감연산으로 감소시켜 간다.

그리고 count를 증가시켜 총 몇 잔을 시킬 수 있는지 알아낸다.

다 돌고 나면 while 조건이 충족되지 않아서 나머지(남은 돈)가 return 된다.

function solution(money) {
    let count = 0;
    while (money >= 5500) {
        money -= 5500;
        count++
    }
    return [count, money]
}
728x90