유럽에서 가장 유명했던 유람선 타이타닉이 침몰하고 있습니다. 유람선에는 N명의 승객이 타고 있습니다. 구명보트를 타고 탈출해야 하는데 타이타닉에 있는 구명보트는 2명 이하로만 탈 수 있 으며, 보트 한 개에 탈 수 있는 총 무게도 M kg 이하로 제한되어 있습니다. N명의 승객 몸무게가 주어졌을 때 승객 모두가 탈출하기 위한 구명보트의 최소개수를 출력하는 프로그램을 작성하세요.
import sys
# sys.stdin=open("input.txt","rt")
n,m = map(int,input().split())
# n = int(input())
arr = list(map(int,input().split()))
# n = input()
# arr = [list(map(int,input().split())) for _ in range(n)]
# arr = [int(input()) for _ in range(n)]
res = 0
arr = sorted(arr,reverse=True)
# 100,90,70,60,50
lt=0
rt=len(arr)-1
while lt<=rt:
if arr[lt]+arr[rt] <=m:
rt -=1
lt +=1
res+=1
print(res)'코테연습 > python' 카테고리의 다른 글
| 증가수열 만들기(그리디) (0) | 2026.04.24 |
|---|---|
| 창고 정리 (0) | 2026.04.23 |
| 씨름 선수(그리디) (0) | 2026.04.20 |
| 회의실 배정(그리디) (0) | 2026.04.20 |
| 게임 이벤트 유저 분류 (0) | 2026.04.19 |