Files
contests/misc/binary-search/p145sumg.cpp

41 lines
621 B
C++

#include <bits/stdc++.h>
#include <ios>
using namespace std;
int a[100000];
int n, m;
int checker(int k) {
int ret = 0;
for (int i = 0; i < n; i++) {
ret += k / a[i];
}
return ret;
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
freopen("p145sumg.inp", "r", stdin);
cin >> n >> m;
int l = 1, r;
for (int i = 0; i < n; i++) {
cin >> a[i];
r = max(r, a[i]);
}
r *= m;
int res = r;
while (l < r) {
int mid = (l + r) / 2;
if (checker(mid) >= m) {
r = mid;
res = min(mid, res);
} else {
l = mid + 1;
}
}
cout << res << "\n";
}