n,k=map(int,input().split())
a=list(map(int,input().split()))
l,r=10**9,0
while l-r>1:
    t=(l+r)//2
    if sum((i-1)//t for i in a)>k:
        r=t
    else:
        l=t
print(l) n,k=map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split k a=list(map(int,input().split())) a list(map(int,input().split())) list map(int,input().split()) map int input().split() ().split () input split l,r=10**9,0 l 10**9 10 9 r 0 while l-r>1:
    t=(l+r)//2
    if sum((i-1)//t for i in a)>k:
        r=t
    else:
        l=t l-r>1 l-r l r 1 t=(l+r)//2 t (l+r)//2 l+r l r 2 if sum((i-1)//t for i in a)>k:
        r=t
    else:
        l=t sum((i-1)//t for i in a)>k sum((i-1)//t for i in a) sum (i-1)//t i-1 i 1 t k r=t r t l=t l t print(l) print l a=list(map(int,input().split())) list(map(int,input().split())) a t=(l+r)//2 (l+r)//2 t n,k=map(int,input().split()) map(int,input().split()) n r=t t r l,r=10**9,0 10**9 l l=t t l k=map(int,input().split()) map(int,input().split()) k r=10**9,0 0 r
n,k=map(int,input().split())
a=list(map(int,input().split()))
l,r=10**9,0
while l-r>1:
    t=(l+r)//2
    if sum((i-1)//t for i in a)>k:
        r=t
    else:
        l=t
print(l)