Submission #223449

#TimeUsernameProblemLanguageResultExecution timeMemory
223449MKopchevICC (CEOI16_icc)C++14
7 / 100
518 ms632 KiB
#include <bits/stdc++.h> #include "icc.h" using namespace std; const int nmax=100+42; /* void setRoad(int a,int b) { cout<<"set "<<a<<" "<<b<<endl; } int query(int size_a,int size_b,int a[],int b[]) { cout<<"size_a "<<size_a<<" a ";for(int i=0;i<size_a;i++)cout<<a[i]<<" ";cout<<endl; cout<<"size_b "<<size_b<<" b ";for(int i=0;i<size_b;i++)cout<<b[i]<<" ";cout<<endl; int ret; cin>>ret; return ret; } */ int size_a,size_b,a[nmax],b[nmax]; int n; int parent[nmax]; int root(int node) { if(node==parent[node])return parent[node]; parent[node]=root(parent[node]); return parent[node]; } int my_ask(vector<int> lhs,vector<int> rhs) { size_a=lhs.size(); for(int i=0;i<size_a;i++) a[i]=lhs[i]; size_b=rhs.size(); for(int i=0;i<size_b;i++) b[i]=rhs[i]; return query(size_a,size_b,a,b); } void run(int N) { n=N; for(int i=1;i<=n;i++)parent[i]=i; for(int i=1;i<n;i++) { for(int u=1;u<=n;u++) for(int v=u+1;v<=n;v++) if(root(u)!=root(v)) { if(my_ask({u},{v})) { setRoad(u,v); parent[root(u)]=root(v); u=n; v=n; } } } } /* int main() { run(4); } */
#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...