Submission #1319245

#TimeUsernameProblemLanguageResultExecution timeMemory
1319245noobsolver24Table Tennis (info1cup20_tabletennis)C++20
87 / 100
3093 ms10256 KiB
#pragma GCC optimize("O3") #include <bits/stdc++.h> using namespace std; // #define int long long #define endl '\n' #define all(v) v.begin(), v.end() #define rall(v) v.rbegin(), v.rend() const int sz = 2e5 + 5, inf = 0 /*sonra deyis*/, mod = 1e9 + 7, lg = 21; int a[sz]; void _(){ int n, k; cin >> n >> k; for (int i = 1; i <= n + k; i++) { cin >> a[i]; } unordered_map<int, int> mp; sort(a + 1, a + n + k + 1); for (int i = 1; i <= k + 1; i++) { for (int j = n + k - (k + 1) + 1; j <= n + k; j++) { int sum = a[i] + a[j]; mp[sum]++; } } for (auto [x, y] : mp) { int sum = x; int l = 1, r = n + k, ans = 0; vector<int> v; while (l < r and ans < n) { if (a[l] + a[r] == sum) { ans += 2; v.push_back(a[l++]); v.push_back(a[r--]); } else if (a[l] + a[r] > sum) { r--; } else l++; } if (ans == n) { sort(all(v)); for (auto x : v) cout << x << ' '; cout << endl; return; } } } signed main(){ cin.tie(nullptr)->sync_with_stdio(0); int T = 1; // cin >> T; while (T--) _(); }
#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...