✏️ 문제
문제 파악
자른 길이는 다른 막대에 붙이거나 연결해서 쓸 수 없기 때문에 버린다고 가정하고 코드를 짜야한다.
알고리즘
- 이분 탐색
- 매개 변수 탐색
코드
import sys
input = sys.stdin.readline
m,n = map(int, input().split())
snacks = list(map(int, input().split()))
length = 0
start, end = 1, max(snacks)
while start <= end:
mid = (start+end) // 2
get = 0
for snack in snacks:
get += snack // mid
if get >= m:
length = max(length, mid)
start = mid + 1
else:
end = mid - 1
print(length)
'PS > 백준' 카테고리의 다른 글
[Python] 19939번 박 터뜨리기 (3) | 2024.08.18 |
---|---|
[Python] 1448번 삼각형 만들기 (3) | 2024.08.18 |
[Python] 19637번 IF문 좀 대신 써줘 (0) | 2024.08.17 |
[Python] 1743번 음식물 피하기 (0) | 2024.08.16 |
[Python] 24444번 알고리즘 수업 - 너비 우선 탐색 1 (0) | 2024.08.16 |