Submission #562658

#TimeUsernameProblemLanguageResultExecution timeMemory
562658four_specksEaster Eggs (info1cup17_eastereggs)C++17
100 / 100
23 ms460 KiB
#include <bits/stdc++.h> #include "grader.h" using namespace std; int findEgg(int N, vector<pair<int, int>> bridges) { vector<vector<int>> adj(N); for (auto [u, v] : bridges) adj[u - 1].push_back(v - 1), adj[v - 1].push_back(u - 1); vector<int> order; queue<int> q; vector<bool> visited(N, 0); for (q.push(0), visited[0] = 1; !q.empty();) { int u = q.front(); q.pop(); order.push_back(u); for (int v : adj[u]) { if (!visited[v]) q.push(v), visited[v] = 1; } } assert((int)order.size() == N); int lo = 0, hi = N - 1; while (lo < hi) { int mid = (lo + hi) / 2; vector<int> islands; for (int i = 0; i <= mid; i++) islands.push_back(order[i] + 1); if (query(islands)) hi = mid; else lo = mid + 1; } return order[lo] + 1; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...