Submission #1161318

#TimeUsernameProblemLanguageResultExecution timeMemory
116131812345678Table Tennis (info1cup20_tabletennis)C++20
0 / 100
111 ms1608 KiB
#include <bits/stdc++.h> using namespace std; const int nx=2e5+5, kx=405; int n, k, sz, dp[nx]; vector<int> v ,res; int main() { cin.tie(NULL)->sync_with_stdio(false); cin>>n>>k; sz=n+k; v.resize(sz); for (auto &x:v) cin>>x; for (int l=0; l<k; l++) { for (int r=0; r+l<k; r++) { int idxl=l, idxr=sz-1-r, idx=idxr, sm=v[idxl]+v[idxr], cnt=0, ck=l+r; for (int i=idxl; i<=idxr; i++) { dp[i]=-1; while (idx>idxl&&v[i]+v[idx]>sm) idx--; if (v[i]+v[idx]==sm) dp[i]=idx, cnt++; else ck++; } if (cnt>=n&&ck<k) { cnt=n; for (int i=idxl; i<=idxr; i++) { if (!cnt) continue; if (dp[i]!=-1) { res.push_back(v[i]); res.push_back(v[dp[i]]); cnt-=2; } } sort(res.begin(), res.end()); for (auto x:res) cout<<x<<' '; 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...