제출 #745924

#제출 시각아이디문제언어결과실행 시간메모리
745924vjudge1Table Tennis (info1cup20_tabletennis)C++17
0 / 100
3049 ms2616 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
    int n, k;
    cin >> n >> k;
    vector<long long> x(n+k);
    for (int i=0; i<n+k; i++) cin >> x[i];
    sort(x.begin(), x.end());
    bool done=false;
    vector<long long> ans(n);
    for (int i=0; (i<n+k-1 && !done); i++) {
        for (int j=i+1; (j<n+k && !done); j++) {
            long long sum=x[i]+x[j], cnt=0;
            int l=0;
            for (int r=n+k-1; r-l>0; r--) {
                while (l<r && x[l]+x[r]<sum) l++;
                if (r!=l && x[r]+x[l]==sum) cnt+=2;
            }
            if (cnt>=n) {
                done=true;
                int l=0, ansi=0;
                for (int r=n+k-1; r-l>0; r--) {
                    while (l<r && x[l]+x[r]<sum) l++;
                    if(r!=l && x[r]+x[l]==sum && ansi<n-1) {
                        ans[ansi++]=x[l];
                        ans[ansi++]=x[r];
                    }
                }
            }
        }
    }
    for (int i=0; i<n; i++) cout << ans[i] << " ";
    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...