Submission #1346539

#TimeUsernameProblemLanguageResultExecution timeMemory
1346539bakhtiyarnTable Tennis (info1cup20_tabletennis)C++20
0 / 100
3108 ms452764 KiB
#include <bits/stdc++.h>
using namespace std;

const int N = 3e5+5;
int a[N];

// for(int i=1; i<=n; i++) 
void solve(){
  int n, k; cin >> n >> k;
  for(int i=1; i<=n+k; i++) cin >> a[i];
  
  map<int, int> best;
  
  int mx = 0, sm = 0;
  for(int l=k+1; l>=1; l--){
    for(int r=l+1; r<=n+k; r++){
      best[a[l]+a[r]]+=2;
      if(mx < best[a[l]+a[r]]) mx = best[a[l]+a[r]], sm = a[l]+a[r];
    }
  }
  
  map<int, int> pos;
  for(int i=1; i<=n+k; i++) pos[a[i]] = i;
  
  vector<int> ans;
  int cnt = n/2;
  for(int i=1; i<=n+k and ans.size() < n; i++){
    if(pos[sm-a[i]]) {
      ans.push_back(a[i]);
      ans.push_back(sm-a[i]);
    }
  }
  sort(ans.begin(), ans.end());
  for(int i: ans) cout << i << ' ';
}

signed main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  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...