제출 #1321152

#제출 시각아이디문제언어결과실행 시간메모리
132115212345678Easter Eggs (info1cup17_eastereggs)C++17
100 / 100
8 ms496 KiB
#include <bits/stdc++.h>
#include "grader.h"

using namespace std;

const int nx=515;

vector<int> d[nx], ord;

void dfs(int u, int p)
{
    ord.push_back(u);
    for (auto v:d[u]) if (v!=p) dfs(v, u); 
}

int findEgg (int N, vector < pair < int, int > > bridges)
{
    for (int i=1; i<=N; i++) d[i].clear();
    for (int i=0; i<N-1; i++) d[bridges[i].first].push_back(bridges[i].second), d[bridges[i].second].push_back(bridges[i].first);
    ord.clear();
    dfs(1, 1);
    int l=0, r=ord.size()-1;
    while (l<r)
    {
        int md=(l+r)/2;
        vector<int> qrs;
        for (int i=0; i<=md; i++) qrs.push_back(ord[i]);
        if (query(qrs)) r=md;
        else l=md+1;
    }
    return ord[l];
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...