Submission #1154979

#TimeUsernameProblemLanguageResultExecution timeMemory
1154979vivkostovTable Tennis (info1cup20_tabletennis)C++20
0 / 100
64 ms123364 KiB
#include<bits/stdc++.h> #define endl '\n' using namespace std; void speed() { ios_base :: sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); } int n,k,a[2000005]; vector<bool>v(1000000005); vector<int>otg; mt19937 mt(time(nullptr)); void print(int sum) { for(int i=1;i<=n+k;i++) { if(a[i]<sum&&v[sum-a[i]]) { otg.push_back(i); if(otg.size()==n) { for(int j=0;j<n;j++) { cout<<otg[j]<<" "; } cout<<endl; exit(0); } } } } void resh(int beg,int to) { int sum=a[beg]+a[to],brf=0,brt=0; for(int j=1;;j++) { if(j==beg||j==to)continue; if(a[j]<sum&&v[sum-a[j]])brt++; else brf++; if(brf>k)return; if(brt*2>k) { print(sum); } } } void read() { cin>>n>>k; for(int i=1;i<=n+k;i++) { cin>>a[i]; v[a[i]]=1; } int m1,m2; while(true) { m1=(mt()%(n+k))+1; m2=(mt()%(n+k))+1; if(m1!=m2)resh(m1,m2); } } int main () { speed(); read(); 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...