from sys import stdin
import numpy as np

n, k = map(int, stdin.buffer.readline().split())
a = np.fromstring(stdin.buffer.read(), dtype=np.int, sep=' ')

ng = 0
ok = 10 ** 9 + 1
while ok - ng > 1:
    mid = (ok + ng) >> 1
    if np.sum(np.ceil(a / mid) - 1) <= k:
        ok = mid
    else:
        ng = mid
print(ok) from sys import stdin import numpy as np numpy n, k = map(int, stdin.buffer.readline().split()) n map(int, stdin.buffer.readline().split()) map int stdin.buffer.readline().split() stdin.buffer.readline().split stdin.buffer.readline() stdin.buffer.readline stdin.buffer stdin buffer readline split k a = np.fromstring(stdin.buffer.read(), dtype=np.int, sep=' ') a np.fromstring(stdin.buffer.read(), dtype=np.int, sep=' ') np.fromstring np fromstring stdin.buffer.read() stdin.buffer.read stdin.buffer stdin buffer read dtype=np.int dtype np.int np int sep=' ' sep ' ' ng = 0 ng 0 ok = 10 ** 9 + 1 ok 10 ** 9 + 1 10 ** 9 10 9 1 while ok - ng > 1:
    mid = (ok + ng) >> 1
    if np.sum(np.ceil(a / mid) - 1) <= k:
        ok = mid
    else:
        ng = mid ok - ng > 1 ok - ng ok ng 1 mid = (ok + ng) >> 1 mid (ok + ng) >> 1 ok + ng ok ng 1 if np.sum(np.ceil(a / mid) - 1) <= k:
        ok = mid
    else:
        ng = mid np.sum(np.ceil(a / mid) - 1) <= k np.sum(np.ceil(a / mid) - 1) np.sum np sum np.ceil(a / mid) - 1 np.ceil(a / mid) np.ceil np ceil a / mid a mid 1 k ok = mid ok mid ng = mid ng mid print(ok) print ok ok = 10 ** 9 + 1 10 ** 9 + 1 ok ng = mid mid ng k = map(int, stdin.buffer.readline().split()) map(int, stdin.buffer.readline().split()) k a = np.fromstring(stdin.buffer.read(), dtype=np.int, sep=' ') np.fromstring(stdin.buffer.read(), dtype=np.int, sep=' ') a mid = (ok + ng) >> 1 (ok + ng) >> 1 mid n, k = map(int, stdin.buffer.readline().split()) map(int, stdin.buffer.readline().split()) n ng = 0 0 ng ok = mid mid ok
from sys import stdin
import numpy as np

n, k = map(int, stdin.buffer.readline().split())
a = np.fromstring(stdin.buffer.read(), dtype=np.int, sep=' ')

ng = 0
ok = 10 ** 9 + 1
while ok - ng > 1:
    mid = (ok + ng) >> 1
    if np.sum(np.ceil(a / mid) - 1) <= k:
        ok = mid
    else:
        ng = mid
print(ok)
