k,n = map(int,input().split())
line = [] ; result = []
for _ in range(k):
line.append(int(input()))
start = 1 ; end = max(line)
while start<=end:
total = 0
mid =(start+end)//2
for x in line:
total += x//mid
if total<n: #부족할때
end = mid - 1
else : #넘칠때
result.append(mid)
start = mid + 1
print(max(result))
어우,, 쓸데 없이 헤멘 문제이다..
문제를 잘읽자,,,
n보다 많이 자를 수 있는 케이스도 포함이였는데ㅔ,,그거에서 계속 걸렸었다..
그래서 reuslt라는곳에 이분탐색을 진행하며 Mid를 붙여줘나가서 제일 최대값을 출력하게 했다.