새소식

반응형
코딩 테스트

[프로그래머스] 구명보트

  • -
728x90
반응형

문제

  • 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고 무게 제한도 있다. 모든 사람을 구하기 위해 필요한 구명보트의 최소 개수는?
  • 1 <= 무인도 갇힌 사람 <= 50,000
  • 40 <=  각 사람 몸무게 / 무게 제한 <= 240

 

풀이

  • 각 사람의 몸무게를 정렬한 뒤 가장 가벼운 사람과 무거운 사람을 같이 태울 수 있는지 확인한다.

 

def solution(people, limit):
    answer = 0
    people.sort()
    s, e = 0, len(people)-1
    while s <= e :
        if people[s] + people[e] <= limit :
            s += 1
        e -= 1
        answer += 1
    
    return answer

 

References

  • 프로그래머스 고득점Kit 그리디
반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.