Submission #384478

#TimeUsernameProblemLanguageResultExecution timeMemory
384478ak2006Easter Eggs (info1cup17_eastereggs)C++14
100 / 100
24 ms492 KiB
#include <bits/stdc++.h>
#include "grader.h"
using namespace std;

#define pb push_back
using vi = vector<int>;
using vvi = vector<vi>;
vvi adj(513);
vi a;
void dfs(int i,int p)
{
    a.pb(i);
    for (int c:adj[i]){
        if (c != p)
            dfs(c,i);
    }
}
int findEgg(int n,vector<pair<int,int>>b)
{
    for (int i = 0;i<=512;i++)adj[i].clear();
    a.clear();
    for (pair<int,int> i : b)adj[i.first].pb(i.second),adj[i.second].pb(i.first);
    dfs(1,1);
    int l = 0,r = n - 1;
    while (l < r){
        int mid = (l + r + 1)/2;
        if (query(vector<int>(a.begin(),a.begin() + mid))){
            r = mid - 1;
        }
        else l = mid;
    }
    return a[l];
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...