답안 #522192

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
522192 2022-02-04T03:38:03 Z blue Easter Eggs (info1cup17_eastereggs) C++17
0 / 100
2 ms 584 KB
#include <vector>
#include <cassert>
#include "grader.h"
using namespace std;

using vi = vector<int>;
using pii = pair<int, int>;

const int mx = 512;

vi edge[1+mx];


vi ord(1, 0);

vi vis(1+mx, 0);

void dfs(int u, int p)
{
    vis[u] = 1;
    ord.push_back(u);
    for(int v : edge[u])
    {
        if(vis[v]) assert(v == p);
        if(!vis[v]) 
            dfs(v, u);
    }
}


int findEgg (int N, vector < pair < int, int > > bridges)
{
    for(pii b: bridges)
    {
        edge[b.first].push_back(b.second);
        edge[b.second].push_back(b.first);
    }

    dfs(1, 1);

    assert(int(bridges.size()) == N-1);
    // assert(int(ord.size()) == N);

    int lo = 1, hi = N;
    while(lo != hi)
    {
        int mid = (lo+hi)/2;

        vi qr;
        for(int i = 1; i <= mid; i++)
            qr.push_back(ord[i]);

        if(query(qr))
            hi = mid;
        else
            lo = mid+1;
    }

    return ord[lo];

    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 456 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 468 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 2 ms 584 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -