본문 바로가기

코딩테스트

[프로그래머스] level2. 구명보트 (javascript)

반응형

문제

프로그래머스 문제 링크

나의 풀이

문제를 제대로 이해하지 못했다.

다른이의 풀이

function solution(people, limit) {
    var answer = 0;
    people = people.sort((a,b)=>b-a)
    for(let i =0, j = people.length-1; i <= j ; i++ ){
        if(people[i]+people[j] <= limit) j--
        answer++
    }

    return answer;
}

여기서 개인적인 keypoint는 문제에서 보트에 최대 2명까지 탈 수 있다 명시된 부분을 제대로 이해하고, 식을 구상하는 것이다.

코드적으로는 while문이나 pop을 사용하지 않고, for문에서 변수 2개를 이용해서 비슷한 효과를 낸 것이 인상적이다.

반응형