Submission #1145380

#TimeUsernameProblemLanguageResultExecution timeMemory
1145380Robert_juniorTable Tennis (info1cup20_tabletennis)C++20
100 / 100
48 ms3264 KiB
#include <bits/stdc++.h> using namespace std; #define all(x) x.begin(), x.end() #define pb push_back #define F first #define S second const int N = 2e5 + 7; int a[N]; void solve(){ int n, k; cin>>n>>k; for(int i = 1; i <= n + k; i++){ cin>>a[i]; } sort(a + 1, a + n + k + 1); for(int i = 1; i <= k + 1; i++){ for(int j = n + k; j >= n - 1; j--){ int sum = a[i] + a[j]; int x = i, y = j, cnt = (i - 1) + (n + k - j); while(x < y && cnt <= k){ if(a[x] + a[y] < sum){ x++; cnt++; } else if(a[x] + a[y] > sum){ y--; cnt++; } else{ x++; y--; } } if(cnt > k) continue; vector<int>v; x = i, y = j; while(x < y && v.size() < n){ if(a[x] + a[y] < sum){ x++; cnt++; } else if(a[x] + a[y] > sum){ y--; cnt++; } else{ v.pb(x); v.pb(y); x++; y--; } } sort(all(v)); for(auto it : v){ cout<<a[it]<<' '; } return; } } } signed main(){ ios_base :: sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); 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...