# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
366014 | keta_tsimakuridze | Table Tennis (info1cup20_tabletennis) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
#define f first
#define s second
using namespace std;
const int N=2e5+5,mod=1e9+7;
int t,n,k,F;
vector<int >v,ans;
int a[N];
int main(){
cin>>n>>k;
for(int i=1;i<=n+k;i++){
cin>>a[i];
}
for(int f=0;f<=k;f++){
for(int s=0;s<=k-f;s++){
int lft=k-s-f;
v.clear();
int l=f+1;
int r=n+k-s;
int sum=a[l]+a[r];
while(l<r) {
if(a[l]+a[r]==sum) v.push_back(a[l]),v.push_back(a[r]),l++,r--;
else if(a[l]+a[r]>sum) r--,lft--;
else l++,lft--;
if(!lft) break;
}
if(v.size()>=n) {
for(int i=0;i<n;i++){
ans.push_back(v[i]);
}
sort(ans.begin(),ans.end());
for(int i=0;i<n;i++){
cout<<ans[i]<<ednl;
}
F=1;
}
}
}
}