생성일: 2022년 1월 14일 오후 5:27
# 랜선 자르기 (결정 알고리즘)
import sys
sys.stdin = open("input.txt", "rt")
k, n = map(int, input().split())
l = [int(input()) for _ in range(k)]
l.sort()
a = sum(l) // n
res = 0
while True:
for x in l:
res += x//a
if res < n:
a -= 1
res = 0
else:
break
print(a)
# 랜선 자르기
import sys
#sys.stdin = open("input.txt", "rt")
def Count(len):
cnt = 0
for x in l:
cnt += x//len
return cnt
k, n = map(int, input().split())
l = []
largest = 0
for _ in range(k):
tmp = int(input())
l.append(tmp)
largest = max(largest, tmp) # 가장 큰 수 찾기
lt = 1
rt = largest
while lt <= rt:
mid = (lt+rt)//2
if Count(mid) >= n:
res = mid
lt = mid + 1
else:
rt = mid - 1
print(res)