Submission #282157

#TimeUsernameProblemLanguageResultExecution timeMemory
282157kshitij_sodaniEaster Eggs (info1cup17_eastereggs)C++14
100 / 100
25 ms632 KiB
#include <bits/stdc++.h> using namespace std; typedef long long llo; #define mp make_pair #define pb push_back #define a first #define b second #include "grader.h" using namespace std; vector<int> adj[520]; vector<int> ord; void dfs(int no,int par=-1){ ord.pb(no); for(auto j:adj[no]){ if(j!=par){ dfs(j,no); } } } bool ask(int i){ vector<int> kk; for(int j=0;j<=i;j++){ kk.pb(ord[j]+1); } return query(kk); } int findEgg (int n, vector <pair <int,int>> ed){ for(int i=0;i<n;i++){ adj[i].clear(); } for(auto j:ed){ adj[j.a-1].pb(j.b-1); adj[j.b-1].pb(j.a-1); } dfs(0); // cout<<11<<endl; int ind=-1; for(int i=8;i>=0;i--){ if(ind+(1<<i)>=(n-1)){ continue; } if(!ask(ind+(1<<i))){ ind+=(1<<i); } } // cout<<ans<<endl; return ord[ind+1]+1; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...