본문 바로가기
Engineering WIKI/Programmers

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

by wonos 2022. 5. 31.
 

코딩테스트 연습 - 구명보트

무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5

programmers.co.kr

  • people을 정렬한 다음, 가장 몸무게가 큰 사람과 가장 작은 사람을 더해 limit값과 비교한 다음, 작으면 둘 다 태우고 크면 가장 큰 사람만 태운다.

다른 사람 풀이

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