[프로그래머스] Level2, 구명보트 (Python)

2021. 6. 12. 20:28·알고리즘/프로그래머스
728x90
반응형

문제

https://programmers.co.kr/learn/courses/30/lessons/42885?language=python3 

 

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

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

programmers.co.kr

 

코드

from collections import deque
def solution(people, limit):
    answer = 0
    people.sort()
    people = deque(people)
    while people:
        if len(people) >= 2:
            if people[0] + people[-1] <= limit:
                answer += 1
                people.popleft()
                people.pop()
            else:
                answer += 1
                people.pop()
        else:
            answer += 1
            people.pop()
    return answer

가장 큰 수 와 가장 작은 수를 더해서 limit보다 작다면 두개를 같이빼주고  limit보다 크다면 가장 큰 값만 빼준다.

 

people에 원소 갯수가 2보다 작다면 더하지 않고 바로 pop()을 해준다.

 

pop(0)을 사용하지 않고 people을 deque으로 만들어 popleft()를 사용해 시간을 단축시킨다.

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

'알고리즘 > 프로그래머스' 카테고리의 다른 글

[프로그래머스] Level2, 문자열 압축 (Python)  (0) 2021.06.13
[프로그래머스] Level2, 괄호 변환 (Python)  (0) 2021.06.13
[프로그래머스] Level2, H-Index (Python)  (0) 2021.06.12
[프로그래머스] Level2, 타겟 넘버 (Python)  (0) 2021.06.12
[프로그래머스] Level2, 프린터 (Python)  (0) 2021.06.11
'알고리즘/프로그래머스' 카테고리의 다른 글
  • [프로그래머스] Level2, 문자열 압축 (Python)
  • [프로그래머스] Level2, 괄호 변환 (Python)
  • [프로그래머스] Level2, H-Index (Python)
  • [프로그래머스] Level2, 타겟 넘버 (Python)
wookcode
wookcode
공부한 내용들을 정리하고 기록하는 블로그입니다.
    반응형
  • wookcode
    wookcode
    wookcode
  • 전체
    오늘
    어제
    • 카테고리 (196)
      • study (1)
        • 아파치 카프카 애플리케이션 프로그래밍 with 자.. (0)
        • 인프런 (1)
      • Live Study (15)
      • Programming (14)
        • Java (8)
        • Python (1)
        • Springboot (5)
        • MSA (0)
      • 알고리즘 (117)
        • 백준 (58)
        • 프로그래머스 (59)
      • 에러로그 (5)
      • 항해99 (23)
      • 면접 (1)
      • 프로젝트 (1)
      • CS (19)
        • 네트워크 (2)
        • 운영체제 (2)
        • 데이터베이스 (2)
        • 컴퓨터구조 (1)
        • Java (8)
        • Spring (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    김영한
    에러
    항해마켓
    SpringBoot
    정리
    스파르타코딩클럽
    코딩테스트
    jpa
    항해99
    그리디
    파이썬
    회고
    spring
    백준
    java
    조합
    카카오인턴
    알고리즘
    SFlash
    해결
    버그
    orm
    미니프로젝트
    브루트포스
    카카오코딩테스트
    실전프로젝트
    프로그래머스
    후기
    괄호
    인프런
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
wookcode
[프로그래머스] Level2, 구명보트 (Python)
상단으로

티스토리툴바