알고리즘
[Python] 프로그래머스 - 구명보트
BKM
2024. 5. 16. 17:33
https://school.programmers.co.kr/learn/courses/30/lessons/42885
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
2명까지 밖에 못태운다는 점을 고려했을때, 가장 가벼운 사람과 무거운 사람 중 가능한 조합을 찾는 것이 중요했다.
def solution(people, limit):
people.sort()
answer = 0
light_idx, heavy_idx = 0,len(people)-1
while light_idx<heavy_idx:
if people[light_idx]+people[heavy_idx]<=limit:
light_idx+=1
answer+=1
heavy_idx-=1
return len(people)-answer # 전체 - 짝지어진 경우 + 혼자 타는 경우