const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;
void (async function () {
const arr = (await readline()).split(" ");
const H = Number(await readline());
let ans = 0;
arr.sort((a, b) => a - b);
if (arr.length > H) return console.log(0);
let min = 1,
max = Math.max(...arr);
while (min <= max) {
const mid = (min + max) >> 1;
let cost = 0;
for (const num of arr) {
cost += Math.ceil(num / mid);
}
if (cost <= H) {
max = mid - 1;
ans = mid;
} else {
min = mid + 1;
}
}
console.log(ans);
})();