Submission #1170958

#TimeUsernameProblemLanguageResultExecution timeMemory
1170958PiokemonMeetings (JOI19_meetings)C++20
0 / 100
943 ms1464 KiB
#include "meetings.h" #include <bits/stdc++.h> using namespace std; void rozw(vector<int> a){ if (a.size()<=1) return; int split = a[rand()%a.size()]; int v=a[rand()%a.size()]; while(v==split)v=a[rand()%a.size()]; vector<int> b,c; // b- czesc z v for (int y=0;y<a.size();y++){ if (a[y]==v || a[y]==split)continue; //cerr << split << ' ' << v << ' ' << a[y] << " b\n"; int temp = Query(split,v,a[y]); if (temp != v && temp!=split){ b.push_back(v); v=temp; //y=-1; } else{ if (temp==v)b.push_back(a[y]); else c.push_back(a[y]); } } b.push_back(v); c.push_back(split); //cerr << "bridge " << split << ' ' << v << '\n'; Bridge(min(split,v),max(split,v)); rozw(b); rozw(c); } void Solve(int N) { srand(N*3+14); vector<int>a; for (int x=0;x<N;x++)a.push_back(x); rozw(a); return; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...