Submission #1095267

#TimeUsernameProblemLanguageResultExecution timeMemory
1095267idiotcomputerEaster Eggs (info1cup17_eastereggs)C++11
0 / 100
1 ms600 KiB
#include "grader.h" #include <bits/stdc++.h> using namespace std; #define f first #define s second #define pb push_back #define sz(x) (int) (x).size() const int mxN = 520; vector<int> adj[mxN]; vector<int> ord; /*int res = 0; int k; bool query(vector<int> cur){ res++; for (int c : cur) if (c == k) return 1; return 0; }*/ void dfs(int node, int p){ ord.pb(node); for (int c : adj[node]){ if (c != p) dfs(c,node); } } int findEgg(int n, vector<pair<int,int>> bridges){ for (int i = 0; i < n-1; i++){ adj[bridges[i].f-1].pb(bridges[i].s-1); adj[bridges[i].s-1].pb(bridges[i].f-1); } dfs(0,-1); int l = -1; int r = n-1; int cur; while (r-l>1){ cur = (l+r)/2; if (query(vector<int>(ord.begin(),ord.begin()+cur+1))) r = cur; else l = cur; } return ord[r]; } /* int main() { //ios_base::sync_with_stdio(false); //cin.tie(NULL); int n; cin >> n >> k; k--; vector<pair<int,int>> b(n-1); for (int i = 0; i < n-1; i++) cin >> b[i].f >> b[i].s; cout << findEgg(n,b)+1 << " " << res << '\n'; return 0; } */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...