제출 #1132860

#제출 시각아이디문제언어결과실행 시간메모리
1132860thangdz2k7Easter Eggs (info1cup17_eastereggs)C++20
0 / 100
1 ms500 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){
        -- u, -- v;
        adj[u].push_back(v);
        adj[v].push_back(u);
    }

    vector <int> ord;
    function <void(int, int)> dfs = [&](int u, int p) {
        ord.push_back(u);

        for (int v : adj[u]) if (v != p)
            dfs(v, u);
    };
    dfs(0, -1);

    int low = 0, high = N - 1;
    while (low < high){
        int mid = low + high >> 1;
        vector <int> ask;
        for (int i = 0; i <= mid; ++ i)
            ask.push_back(ord[i]);

        if (query(ask)) high = mid;
        else low = mid + 1;
    }

    return ord[low];

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...