[Python] 구명보트

2026. 3. 22. 15:21·Coding-Test/프로그래머스
728x90
반응형

💻 문제 정의

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

예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 구명보트의 무게 제한을 초과하여 같이 탈 수 없습니다.

구명보트를 최대한 적게 사용하여 모든 사람을 구출하려고 합니다.

💡 접근 및 설계

두 포인터로 접근하였다. 몸무게가 가장 많이 나가는 사람과 가장 적게 나가는 사람을 함께 태우고, 보트가 버티는 무게라면 보낸다. 만약 아니라면 몸무게가 가장 많이 나가는 사람 혼자 태워서 보낸다.

✏️ 알고리즘 풀이

left = 0
right = len(people)-1

boat = 0
while left <= right:
    curr_weight = people[left] + people[right]
    
    if curr_weight > limit:
        boat += 1
        right -= 1
        
    else:
        boat += 1
        left += 1
        right -= 1

처음에 보트 한 대에 가장 가벼운 사람과 무거운 사람을 태워본다. curr_weight가 limit보다 크다면 보트를 하나 증가하고, 가장 무거운 사람을 태운다. 이후 2번째로 무거운 사람과 가장 가벼운 사람을 함께 태워본다.

다음의 과정을 계속 반복하여 최종 boat를 리턴한다.

🗒️ 최종 제출 코드

def solution(people, limit):
    people.sort()
    
    left = 0
    right = len(people)-1
    
    boat = 0
    while left <= right:
        curr_weight = people[left] + people[right]
        
        if curr_weight > limit:
            boat += 1
            right -= 1
            
        else:
            boat += 1
            left += 1
            right -= 1
            
    return boat

💭 오늘의 회고

-

728x90
반응형
저작자표시 (새창열림)

'Coding-Test > 프로그래머스' 카테고리의 다른 글

[Python] 단속카메라  (0) 2026.03.24
[Python] 섬 연결하기  (0) 2026.03.23
[Python] 조이스틱  (0) 2026.03.21
[SQL] FrontEnd 개발자 찾기  (0) 2026.03.06
[SQL] 상품을 구매한 회원 비율 구하기  (0) 2026.03.05
'Coding-Test/프로그래머스' 카테고리의 다른 글
  • [Python] 단속카메라
  • [Python] 섬 연결하기
  • [Python] 조이스틱
  • [SQL] FrontEnd 개발자 찾기
희완
희완
희완한 코딩일상
    반응형
  • 희완
    Code-Heewan
    희완
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Python
        • 가상환경
      • Algorithm
      • Coding-Test
        • 백준
        • 프로그래머스
        • 항해99
      • Data-Analysis
      • 웹 개발
        • django
      • AWS
      • 공모전
      • Mobile
  • 링크

    • Github
  • 300x250
  • hELLO· Designed By정상우.v4.10.3
희완
[Python] 구명보트
상단으로

티스토리툴바