답안 #918573

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
918573 2024-01-30T06:58:05 Z HasanV11010238 Easter Eggs (info1cup17_eastereggs) C++17
87 / 100
14 ms 1004 KB
#include <bits/stdc++.h>
#include "grader.h"
using namespace std;
vector<vector<int>> ve;
vector<int> w;
void dfs(int x, int p){
    w.push_back(x);
    for (auto el : ve[x]){
        if (el != p){
            dfs(el, x);
        }
    }
}
int findEgg (int N, vector < pair < int, int > > bridges)
{
    w.clear();
    ve.clear();
    ve.resize(N + 1);
    for (auto el : bridges){
        ve[el.first].push_back(el.second);
        ve[el.second].push_back(el.first);
    }
    dfs(1, -1);
    int l = 1, r = N;
    while (l <= r){
        int mid = (l + r) / 2;
        vector<int> rec;
        for (int i = 0; i < mid; i++){
            rec.push_back(w[i]);
        }
        bool a = query(rec);
        if (a && r - l == 0){
            return w[l - 1];
        }
        else if (!a && r -l == 0){
            return w[l];
        }
        if (a){
            r = mid - 1;
        }
        else{
            l = mid + 1;
        }
    }
    return w[l - 1];
}
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 344 KB Number of queries: 5
2 Partially correct 1 ms 344 KB Number of queries: 5
3 Partially correct 1 ms 344 KB Number of queries: 5
4 Partially correct 1 ms 344 KB Number of queries: 5
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 976 KB Number of queries: 9
2 Correct 8 ms 724 KB Number of queries: 9
3 Correct 14 ms 988 KB Number of queries: 9
4 Correct 11 ms 1004 KB Number of queries: 9
# 결과 실행 시간 메모리 Grader output
1 Partially correct 12 ms 768 KB Number of queries: 10
2 Correct 11 ms 732 KB Number of queries: 9
3 Partially correct 13 ms 740 KB Number of queries: 10
4 Partially correct 12 ms 748 KB Number of queries: 10