Submission #717331

#TimeUsernameProblemLanguageResultExecution timeMemory
717331vjudge1Table Tennis (info1cup20_tabletennis)C++17
20 / 100
255 ms69184 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define endl '\n' #define F first #define S second #define pb push_back #define all(a) a.begin(),a.end() const int N=1e5; const int off=(1<<20); const int MOD = 1e9+7; signed main(){ ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); int n,k; cin >> n >> k; int sz=n+k; int a[sz]; map<int,int>mp; for(int i=0;i<sz;i++){ cin >>a[i]; mp[a[i]]++; } sort(a,a+sz); if(k==1){ int f=a[sz/2]+a[sz/2-1],s=a[sz/2]+a[sz/2+1],t=a[0]+a[sz-1]; int x=0,y=0,z=0; // cout<<f<<' '<<s << ' '<<t<<endl; for(int i=0;i<sz;i++){ if(a[i]!=f-a[i]){ if(!mp[f-a[i]]){ if(x)x=-1; else x=a[i]; } } else{ x=a[i]; } if(a[i]!=s-a[i]){ if(!mp[s-a[i]]){ if(y)z=-1; else y=a[i]; } } else{ y=a[i]; } if(a[i]!=t-a[i]){ if(!mp[t-a[i]]){ if(z)z=-1; else z=a[i]; } } else{ z=a[i]; } } int ans=max({z,x,y}); for(int i=0;i<sz;i++){ if(a[i]!=ans)cout<<a[i]<<' '; } } else{ vector<int>v; v.pb(a[sz/2]+a[sz/2+1]); v.pb(a[sz/2]+a[sz/2+2]); v.pb(a[sz/2-1]+a[sz/2+1]); v.pb(a[sz/2-1]+a[sz/2+2]); v.pb(a[sz/2-1]+a[sz/2]); v.pb(a[sz/2+1]+a[sz/2+2]); if(sz>4){ v.pb(a[sz/2]+a[sz/2+3]); v.pb(a[sz/2-2]+a[sz/2]); } int h[8]={0}; pair<int,int>pp[8]={}; for(int i=0;i<sz;i++){ for(int j=0;j<8;j++){ if(a[i]!=v[j]-a[i]){ if(!mp[v[j]-a[i]]){ if(pp[j].F==0)pp[j].F=a[i]; else if(pp[j].S==0)pp[j].S=a[i]; else pp[j]={-1,-1}; } } else{ if(pp[j].F==0)pp[j].F=a[i]; else if(pp[j].S==0)pp[j].S=a[i]; else pp[j]={-1,-1}; } } } sort(pp,pp+8); pair<int,int>p=pp[7]; for(int i=0;i<sz;i++){ if(p.F!=a[i]&&p.S!=a[i])cout<<a[i]<<' '; } } } /* */

Compilation message (stderr)

tabletennis.cpp: In function 'int main()':
tabletennis.cpp:76:11: warning: unused variable 'h' [-Wunused-variable]
   76 |       int h[8]={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...