https://www.acmicpc.net/problem/1654
1654번: 랜선 자르기
첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,000이하의 정수이다. 그리고 항상 K ≦ N 이다. 그
www.acmicpc.net
이진탐색문제.
반례라 함은..
mid값이 0이 되는 경우가 있어서, st를 1로 잡고 들어가야 한다. (0으로 잡으면 런타임에러가 나옴)
k,n = list(map(int,input().split()))
arr = []
for _ in range(k):
arr.append(int(input()))
st = 1
ed = max(arr)
while st <= ed:
mid = (st+ed)//2
cnt = 0
for i in range(k):
lan = arr[i]
cnt+=lan //mid
if cnt >= n:
st = mid +1
else:
ed = mid-1
print(ed)
'Algorithm > baekjoon' 카테고리의 다른 글
baekjoon 2839: 설탕 배달 (0) | 2022.08.11 |
---|---|
baekjoon 2110: 공유기 설치 (0) | 2022.07.19 |
baekjoon 6236: 용돈 관리 (0) | 2022.07.14 |
baekjoon 2343: 기타 레슨 (0) | 2022.07.13 |
baekjoon 2512: 예산 (0) | 2022.07.12 |
댓글