Submission #1231986

#TimeUsernameProblemLanguageResultExecution timeMemory
1231986khomeTable Tennis (info1cup20_tabletennis)C++20
0 / 100
135 ms8520 KiB
#include <bits/stdc++.h>

using namespace std;
#define int unsigned long long

const int inf = 1e9;

void solve(){
    int n, k; cin >> n >> k;
    vector<int> a(n + k);
    set<int> st;
    for (int i = 0; i < n + k; i++ ) {cin >> a[i]; st.insert(a[i]);}

    sort(a.begin(), a.end());
    auto check = [&](int x, int l, int r) -> void {
        vector<int> v;
        for (int i = l; i <= r; i++) {
            if (v.size() >= n) break; 
            if (st.find(x - i) != st.end() && a[i] < x - a[i]) {
                v.push_back(a[i]);
                v.push_back(x - a[i]);
            }
        }
        if (v.size() == n){
            sort(v.begin(), v.end());
            for (int i : v) cout << i << ' '; cout << endl;
            exit(0);
        }
        return;
    };

    for (int i = 0; i < k + 1; i++ ) {
        for (int j = i + n - 1; j < n + k; j++) {
            check(a[i] + a[j], i, j);
        }
    }

}

signed main(){
    cin.tie(0) -> sync_with_stdio(0);
    int t = 1;
    // cin >> t;
    while (t--)solve();
}
#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...