제출 #649540

#제출 시각아이디문제언어결과실행 시간메모리
649540elifEaster Eggs (info1cup17_eastereggs)C++17
80 / 100
15 ms592 KiB
#include <bits/stdc++.h> #include "grader.h" // #include "grader.cpp" using namespace std; vector<int> adj[520]; vector<int> v; void dfs(int u, int p){ v.push_back(u); for(auto x : adj[u]){ if(x != p) dfs(x, u); } } int findEgg(int N, vector<pair<int, int>> bridges){ ios_base::sync_with_stdio(0); for(int i=0; i<N-1; i++){ int u = bridges[i].first; int v = bridges[i].second; adj[u].push_back(v); adj[v].push_back(u); } dfs(1, 0); int ans = v[N - 1]; int l = 0, r = N - 2; while(l <= r){ vector<int> islands; int mid = (l + r) / 2; for(int i=0; i<=mid; i++) islands.push_back(v[i]); if(query(islands) == 1){ ans = v[mid]; r = mid - 1; } else l = mid + 1; } v.clear(); for(int i=0; i<512; i++) adj[i].clear(); return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...