제출 #1232149

#제출 시각아이디문제언어결과실행 시간메모리
1232149AishaTable Tennis (info1cup20_tabletennis)C++20
49 / 100
3095 ms20500 KiB
#include "bits/stdc++.h"

using namespace std;

#define int long long

mt19937 rng(143532);

signed main() {
    int n, k;
    cin >> n >> k;

    vector <int> a(n + k);
    for (int i = 0; i < n + k; i ++) cin >> a[i];

    auto check = [&] (int sum) -> int {
        map <int, int> mp;
        vector <int> v;
        for (int i = n + k - 1; i >= 0; i --) {
            if (mp[sum - a[i]]) {
                v.push_back(a[i]);
            }

            mp[a[i]] ++;
            if (v.size() == n / 2) break;
        }

        if (v.size() == n / 2) {
            for (int i = n / 2 - 1; i >= 0; i --) v.push_back(sum - v[i]);
            sort(v.begin(), v.end());
            for (int i : v) cout << i << ' ';
            cout << endl;
            return 1;
        } 
        return 0;
    };

    int i = rng() % (n + k);
    int j = rng() % (n + k);
    int sum = a[i] + a[j];
    while (!check(sum)) {
        i = rng() % (n + k);
        j = rng() % (n + k);
        sum = a[i] + a[j];
    }

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...