#include <bits/stdc++.h>
using namespace std;
// #define int long long
#define endl '\n'
#define all(v) v.begin(), v.end()
#define rall(v) v.rbegin(), v.rend()
const int sz = 2e5 + 5, inf = 0 /*sonra deyis*/, mod = 1e9 + 7, lg = 21;
int a[sz];
void _(){
int n, k;
cin >> n >> k;
for (int i = 1; i <= n + k; i++) {
cin >> a[i];
}
unordered_map<int, int> mp;
sort(a + 1, a + n + k + 1);
for (int i = 1; i <= n + k; i++) {
mp[a[i]] = i;
}
for (int i = 1; i <= k + 1; i++) {
for (int j = n + k - (k + 1) + 1; j <= n + k; j++) {
int sum = a[i] + a[j];
vector<char> used(n + k + 1, 0);
int ans = 0;
vector<int> v;
for (int r = 1; r <= n + k; r++) {
int y = sum - a[r];
if (mp[y]) {
if (!used[mp[y]] and mp[y] != r) {
ans += 2;
used[mp[y]] = used[r] = 1;
v.push_back(a[r]);
v.push_back(y);
if (v.size() == n) break;
}
}
}
if (ans == n) {
sort(all(v));
for (auto x : v) cout << x << ' ';
cout << endl;
return;
}
}
}
}
signed main(){
cin.tie(nullptr)->sync_with_stdio(0);
int T = 1;
// cin >> T;
while (T--) _();
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |