제출 #1304481

#제출 시각아이디문제언어결과실행 시간메모리
1304481nagorn_phEaster Eggs (info1cup17_eastereggs)C++20
0 / 100
423 ms196608 KiB
#include <bits/stdc++.h>
#include "grader.h"
#define emb emplace_back

using namespace std;

vector <int> adj[600], path;

void dfs(int u, int p){
    path.emb(u);
    for (auto v : adj[u]) {
        if (v == p) continue;
        dfs(v, u);
    }
}

int findEgg (int n, vector < pair < int, int > > bridges)
{
    for (auto [u, v] : bridges) adj[u].emb(v), adj[v].emb(u);   
    dfs(1, 1);
    int l = 0, r = n - 1;
    int ans = 0;
    while (l <= r) {
        int mid = (l + r) / 2;
        vector <int> que;
        for (int i = 0; i <= mid; i++) que.emb(path[i]);
        int x = query(que);
        if (x) r = mid - 1, ans = path[mid];
        else l = mid + 1;
    }
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...