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


탐욕법(Greedy) - 구명보트

블로그에는 안 올렸지만, 한동안 C++로 코딩 테스트하다가 python으로 하려니까 어색하다.

사용 언어 : Python3

from collections import deque

def solution(people, limit):
    answer = 0
    
    people = deque(sorted(people, reverse=True))
    weight = 0
    
    while(people) :
        if weight + people[0] <= limit :
            weight += people.popleft()
            if len(people) == 0 :
                answer += 1
        else :
            if weight + people[len(people)-1] <= limit :
                weight += people.pop()
            else :
                weight = 0
                answer+=1
    return answer


© 2020. by bs-derek