제출 #1145916

#제출 시각아이디문제언어결과실행 시간메모리
1145916tishoEaster Eggs (info1cup17_eastereggs)C++20
0 / 100
101 ms196608 KiB
#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
#include <set>
#include "grader.h"
#define endl '\n'
#define ll long long
vector<int>v[513];
vector<int>b;
bool used[513];
void dfs(int a)
{
    used[a]=true;
    b.push_back(a);
    for(auto i:v[a])
    {
        if(!used[i])
        {
            dfs(a);
        }
    }
}
int findEgg(int n, vector<pair<int,int>>bridges)
{
    memset(used,false,sizeof(used));
    for(int i=1;i<=n;i++)
    {
        v[i].clear();
    }
    for(int i=0;i<bridges.size();i++)
    {
        int x,y;
        x=bridges[i].first;
        y=bridges[i].second;
        v[x].push_back(y);
        v[y].push_back(x);
    }
    b.clear();
    for(int i=1;i<=n;i++)
    {
        if(!used[i])
        {
            dfs(i);
        }
    }
    int l=0,r=b.size()-1,m,isThere;
    vector<int>cur(m);
    while(l<=r)
    {
        m=l+(r-l)/2;
        cur.clear();
        for(int i=1;i<=m;i++)
        {
            cur.push_back(i);
        }
        isThere=query(cur);
        if(isThere==1)
        {
            r=m;
        }
        else
        {
            l=m+1;
        }
    }
    return m;
}






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