Submission #1240529

#TimeUsernameProblemLanguageResultExecution timeMemory
1240529denislavEaster Eggs (info1cup17_eastereggs)C++20
0 / 100
1 ms476 KiB
# include "grader.h"
# include <iostream>
# include <vector>
//# include "grader.cpp"
using namespace std;

const int MAX=513;

vector<int> adj[MAX];

int ct;
int order[MAX];

void dfs(int curr, int par)
{
    ct++;
    order[ct]=curr;

    for(int nxt: adj[curr])
    {
        if(nxt==par) continue;
        dfs(nxt,curr);
    }
}

int findEgg (int N, vector < pair < int, int > > bridges)
{
    ct=0;
    for(int i=1;i<=N;i++) adj[i].clear();

    for(pair<int,int> pa: bridges)
    {
        int u=pa.first,v=pa.second;
        adj[u].push_back(v);
        adj[v].push_back(u);
    }
    dfs(1,0);

    int l=1,r=N,ans=1;
    while(l!=r)
    {
        int mid=(l+r)/2;
        vector<int> v;
        for(int i=l;i<=mid;i++) v.push_back(order[i]);
        if(query(v))
        {
            ans=mid;
            r=mid;
        }
        else
        {
            ans=mid+1;
            l=mid+1;
        }
    }

    return order[ans];
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...