[프로그래머스] 양꼬치

·2023년 2월 18일
0

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

내 풀이

function solution(n, k) {
    let sum1 = (12000 * n) + (2000 * k)
    let sum2 = Math.floor(n / 10)
    let sum3 = 2000 * sum2
    let answer = sum1 - sum3 
    return answer;
}

다른 사람의 풀이 => 틸트 문법 사용

function solution(n, k) {
    k-=~~(n/10);
    if (k < 0) k = 0;
    return n*12000+k*2000;
}

Tilt (틸트) '~'

비트로 부정하는 연산자 -(n+1) 이런 식이 성립 문자열 메서드인indexOf()로 논리식을 짤 수 있다.

var str = '강남역,잠실역,신논현역'; 
var val = '남'; 
 
if (~str.indexOf(val)) {             // 해당 문자열이 있다면 
    console.log(!~ str.indexOf(val)); // false
} else { 
    console.log(222); 
}

~~ 연산자

Math.floor() 와 동등하게 쓰이는 연산자

var num = '2234.5678'; 
console.log(~~num); // 2234
profile
개발자가 되는 과정

0개의 댓글