Submission #261853

#TimeUsernameProblemLanguageResultExecution timeMemory
261853dolphingarlicEaster Eggs (info1cup17_eastereggs)C++14
0 / 100
300 ms131076 KiB
#include <bits/stdc++.h>
#include "grader.h"
using namespace std;

vector<int> graph[513], dfs_order;

void dfs(int node = 1, int parent = 0) {
    dfs_order.push_back(node);
    for (int i : graph[node]) if (i != parent) dfs(i, node);
}

int findEgg(int N, vector<pair<int, int>> bridges) {
    for (pair<int, int> i : bridges) {
        graph[i.first].push_back(i.second);
        graph[i.second].push_back(i.first);
    }
    dfs();
    int l = 0, r = N - 1;
    while (l != r) {
        int mid = (l + r + 1) / 2;
        if (query(vector<int>(dfs_order.begin(), dfs_order.begin() + mid))) r = mid - 1;
        else l = mid;
    }
    return dfs_order[l];
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...