| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1347809 | miyazaki1072 | Easter Eggs (info1cup17_eastereggs) | C++20 | 0 ms | 0 KiB |
#include <bits/stdc++.h>
#include "grader.h"
using namespace std;
vector<int>adj[10000];
int node[10000],a[10000],tour=1;
void dfs(int u,int p){
node[u] = tour++;
a[node[u]] = u;
for(auto &v:adj[u]){
if(v==p)continue;
dfs(v,u);
}
}
vector<int>calc(int r){
vector<int>ret;
for(int i=1;i<=r;i++)ret.push_back({a[i]});
return ret;
}
int findEgg (int N, vector < pair < int, int > > bridges){
n = N;
for(auto [u,v]:bridges){
adj[u].push_back(v);
adj[v].push_back(u);
}
int l=1,r=n;
while(l<r){
int mid = (l+r)/2;
vector<int> vecask = calc(mid);
if(query(vecask))r=mid;
else l = mid+1;
}
return node[l];
}
