#include<iostream>
#include<vector>
#include<algorithm>
#include<cmath>
#include<queue>
#include<map>
#include<set>
using namespace std;
using ll = long long;
ll mod = 998244353;
void solve()
{
int n, k; cin >> n >> k;
vector<int>v(n + k);
map<int, int>mp;
for (int i = 0; i < n + k; i++) {
cin >> v[i];
mp[v[i]]++;
}
sort(v.begin(), v.end());
if (k == 1) {
int aper = v[1] + v[n + k - 1], f = 0;
for (int i = 1; i < n + k; i++) {
if (v[i] + v[n + k - i] != aper) {
f = 1;
}
}
if (f == 0) {
for (int i = 1; i < n + k; i++) {
cout << v[i] << " ";
}
cout << endl;
return;
}
aper = v[0] + v[n + k - 2], f = 0;
for (int i = 0; i < n + k - 1; i++) {
if (v[i] + v[n + k - i - 2] != aper) {
f = 1;
}
}
if (f == 0) {
for (int i = 0; i < n + k - 1; i++) {
cout << v[i] << " ";
}
cout << endl;
return;
}
aper = v[0] + v[n + k - 1], f = 0;
for (int i = 0; i < n + k; i++) {
//cout << v[i] << " " << mp[v[i]] << " " << mp[aper - v[i]] << endl;
if (mp[v[i]] == 0)continue;
if (mp[aper - v[i]] == 0)f = i;
else {
mp[v[i]]--;
mp[aper - v[i]]--;
}
}
for (int i = 0; i < n + k; i++) {
if (i != f) {
cout << v[i] << " ";
}
}
cout << endl;
}
}
signed main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
//signed _; cin >> _; while (_--)
solve();
}
# | 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... |