元素周期表第51位 • 11天前
using namespace std; int a[100002], b[100002];
int main() {
int n, m, k;
cin >> n >> m >> k;
for (int i = 1; i <= n; i++)
cin >> a[i];
for (int i = 1; i <= m; i++)
cin >> b[i];
sort(a + 1, a + 1 + n);
sort(b + 1, b + 1 + m);
int left = a[1] + b[1];
int right = a[n] + b[m];
while (left < right) {
int mid = (left + right) / 2 + 1;
long long cnt = 0;
for (int i = 1; i <= n; i++) {
int x = lower_bound(b + 1, b + 1 + m, mid - a[i]) - b;
cnt += x - 1;
}
if (cnt < k)
left = mid;
else
right = mid - 1;
}
cout << left;
return 0;
}
评论:
请先登录,才能进行评论