728x90
반응형
입력
첫째 줄에 자연수 N(5<=N<=1000)과 M(70<=M<=250)이 주어집니다. 두 번째 줄에 N개로 구성된 몸무게 수열이 주어집니다. 몸무게는 50이상 150이하입니다. 각 승객의 몸무게는 M을 넘지는 않습니다. 즉 탈출을 못하는 경우는 없습니다.
출력
첫째 줄에 구명보트의 최소 개수를 출력합니다,
문제풀이
from collections import deque
n, m = map(int, input().split())
wei = list(map(int, input().split()))
wei.sort()
wei = deque(wei)
cnt = 0
while wei:
if len(wei) == 1:
cnt += 1
break
if wei[0] + wei[-1] <= m:
wei.pop()
wei.popleft()
cnt += 1
else:
cnt += 1
wei.pop()
print(cnt)
728x90
반응형
'공부 > Python' 카테고리의 다른 글
[그리디] 백준 11399번 ATM (0) | 2025.04.02 |
---|---|
[그리디] 백준 11047번 동전 0 (0) | 2025.03.30 |
[그리디] 증가수열 만들기 (0) | 2025.03.29 |
[그리디] 역수열 (0) | 2025.03.29 |
[그리디] 백준 2891번 카약과 강풍 (0) | 2025.03.29 |