Submission #1145921

#TimeUsernameProblemLanguageResultExecution timeMemory
1145921mitko7Easter Eggs (info1cup17_eastereggs)C++20
100 / 100
8 ms512 KiB
#include <bits/stdc++.h>
#include "grader.h"

using namespace std;

vector<int> g[1000];
vector<int> t;
int used[1000];

void dfs(int i) {
    used[i]=1;
    t.push_back(i);
    for(auto x : g[i]) if(!used[x]) dfs(x);
}

int findEgg(int N, vector<pair<int, int>> bridges)
{
    for(auto x : bridges) {
        g[x.first].push_back(x.second);
        g[x.second].push_back(x.first);
    }
    dfs(1);
    int l = 1, r = N, m;
    while(l<r) {
        int m = (l+r)/2;
        vector<int> z;
        for(int i = 0; i < m; i++) z.push_back(t[i]);
        if(query(z)) {
            r = m;
        }
        else l=m+1;
    }

    for(int i = 0; i < 600; i++) {used[i]=0;g[i].clear();}
    t.clear();

    return t[l-1];
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...