#include <bits/stdc++.h>
#include "grader.h"
using namespace std;
vector<vector<int>> g;
vector<int> o;
vector<bool> visited(513,false);
int c;
void dfs(int curr){
o.emplace_back(curr);
for(auto x : g[curr]){
if(visited[x]) continue;
visited[x] = true;
dfs(x);
}
}
int findEgg(int N, vector<pair<int, int>> bridges)
{
c = 0;
g.clear();
g.resize(N + 1);
for(auto x : bridges){
g[x.first].emplace_back(x.second);
g[x.second].emplace_back(x.first);
}
dfs(1);
int l = 0, r = N - 1;
while(l < r){
int mid = (r - l) / 2 + l;
vector<int> ask;
for(int i = 0; i <= mid; i++){
ask.emplace_back(o[i]);
}
if(query(ask)){
r = mid;
}
else{
l = mid - 1;
}
}
return o[l];
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |