#include <bits/stdc++.h>
using namespace std;
int len[100]; // 绳子长度
int n,m,i,lbound,ubound,mid;
int main() {
cin>>n;
int count = 0;
for (i = 0; i < n; i++) {
cin>>len[i];
count = count + len[i];
}
cin>>m;
if (count < m) {
cout<<"Failed"<<endl;
return 0;
}
lbound = 1;
ubound = 1000000;
while (lbound < ubound) {
mid = (lbound + ubound + 1) / 2;
count = 0;
for (i = 0; i < n; i++)
count = count + len[i] / mid;
if (count < m)
ubound = mid - 1;
else
lbound = mid;
}
cout<<lbound<<endl;
return 0;
}
/**************************************************************
Problem: 1413
User: admin
Language: C++
Result: Accepted
Time:18 ms
Memory:2072 kb
****************************************************************/