brunch

You can make anything
by writing

C.S.Lewis

by Lynn Nov 02. 2022

코딩테스트 <양꼬치>

프로그래머스 <양꼬치>

문제 설명

머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다. 양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다. 정수 n과 k가 매개변수로 주어졌을 때, 양꼬치 n인분과 음료수 k개를 먹었다면 총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해보세요.


제한사항

0 < n < 1,000

n / 10 ≤ k < 1,000

서비스로 받은 음료수는 모두 마십니다.


문제 풀이 

function solution(n, k) {

    var answer = 0;

    return n * 12000 + (k - Math.floor(n / 10)) * 2000;

    return answer;

}


중요 개념 

n인분 * 12000(1인분 가격) + (음료 k 구매 개수 - 서비스 개수) * 2000(음료값)

Math.floor(n/10)을 이용해서 10의 배수로 나뉘어지는, 서비스로 받은 개수를 빼준다. 

Math.floor를 이용하면 n의 값이 정수로만 산출되기에 n이 10의 배수일 때만 계산이 가능해지도록 한다. 

그렇지 않을 경우, 서비스 개수는 Math.floor(n/10)값은 0으로 산출. k 값에 2000원만 곱해주면 된다.


다른 풀이)

function solution(n, k) {

     return n*12000 + k*2000 - parseInt(n/10)*2000 }


parseInt() 함수

Math.floor() 함수

Math.trunc() 함수

>> 모두 정수값 산출 함수. 



작가의 이전글 코딩테스트 <짝수의 합> (다시 풀어볼 것)
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari