Submission #1318642

#TimeUsernameProblemLanguageResultExecution timeMemory
1318642tuncay_pashaTable Tennis (info1cup20_tabletennis)C++20
100 / 100
78 ms16056 KiB
/**
 * author:  tuncypasha
 * file:    b.cpp
 * created: 02.02.2026 13:04
 * Student of Adicto and Raul2008487
**/
#include <bits/stdc++.h>
#define pasha ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define int long long
#define ff first
#define ss second
#define pb push_back
#define all(v) begin(v), end(v)
using namespace std;

// mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

constexpr int N = 1e5 + 5, mod = 1e9 + 7;

void _()
{
  int n, k;
  cin >> n >> k;
  int nn = n + k;
  vector<int> a(nn + 1), v;
  for (int i = 1; i <= nn; ++i) cin >> a[i];
  for (int i = 1; i <= min(nn, k + 5); ++i)
  {
    for (int j = nn; j >= max(nn - k - 5, 1LL); --j) v.push_back(a[i] + a[j]);
  }
  map<int, int> mp;
  int mx = 0;
  for (int &i : v)
  {
    ++mp[i];
    mx = max(mx, mp[i]);
  }
  vector<int> sumv;
  for (auto &[i, j] : mp)
  {
    if (j == mx) sumv.push_back(i);
  }
  for (int &sum : sumv)
  {
    int l = 1, r = nn;
    vector<int> ans;
    while (l < r && size(ans) < n)
    {
      if (a[l] + a[r] == sum)
      {
        ans.push_back(a[l++]);
        ans.push_back(a[r--]);
      }
      else if (a[l] + a[r] > sum) --r;
      else ++l;
    }
    if (size(ans) != n) continue;
    sort (ans.begin(), ans.end());
    for (int &i : ans) cout << i << ' '; return cout << '\n', void();
  }
}

signed main()
{
  pasha
  int t = 1;
  // cin >> t;
  for (int cs = 1; cs <= t; ++cs)
  {
    _();
    // cout << '\n';
  }
}
#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...