Submission #1164586

#TimeUsernameProblemLanguageResultExecution timeMemory
1164586daoquanglinh2007Easter Eggs (info1cup17_eastereggs)C++20
100 / 100
8 ms504 KiB
#include "grader.h" #include <bits/stdc++.h> using namespace std; #define pii pair <int, int> #define fi first #define se second #define mp make_pair #define isz(a) (int)(a).size() const int NM = 512; int N; vector <int> adj[NM+5]; vector <int> arr; void dfs(int u, int p){ arr.push_back(u); for (int v : adj[u]){ if (v == p) continue; dfs(v, u); } } int findEgg(int _N, vector <pii> bridges){ N = _N; for (int i = 1; i <= N; i++) adj[i].clear(); for (pii p : bridges){ adj[p.fi].push_back(p.se); adj[p.se].push_back(p.fi); } arr.clear(); dfs(1, -1); int l = 0, r = N-2, res = N-1; while (l <= r){ int mid = (l+r)/2; vector <int> h = {}; for (int j = 0; j <= mid; j++) h.push_back(arr[j]); if (query(h)){ res = mid; r = mid-1; } else l = mid+1; } return arr[res]; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...