#https://yukicoder.me/problems/no/67 n = int(input()) l = list(map(int,input().split())) k = int(input()) ok=0 ng=10**10+1 def judge(mid): cnt=0 for ll in l: cnt += ll//mid if cnt >= k: return 1 else: return 0 while ng - ok > 0.0000000001: mid = (ng+ok)/2 if judge(mid): ok = mid else: ng = mid #print(ok,ng) print(ok)