Submission #484546

#TimeUsernameProblemLanguageResultExecution timeMemory
484546MohamedFaresNebiliEaster Eggs (info1cup17_eastereggs)C++14
0 / 100
3 ms488 KiB
#include <bits/stdc++.h> /// #pragma GCC optimize ("Ofast") /// #pragma GCC target ("avx2") using namespace std; using ll = long long; using vi = vector<int>; #define pb push_back #define ff first #define ss second #define lb lower_bound #define all(x) (x).begin() , (x).end() #include "grader.h" /// int query (vector < int > h); vector<int>adj[555], id; int timer, tin[555], out[555]; void dfs(int v, int p) { tin[v] = timer++; id.pb(v); for(auto u: adj[v]) { if(u == p) continue; dfs(u, v); } out[v] = timer - 1; } int findEgg (int N, vector < pair < int, int > > bridges) { for(auto u : bridges) { int a = u.ff, b = u.ss; adj[a].pb(b); adj[b].pb(a); } timer = 0; dfs(1, 1); int lo = 0, hi = N - 1; for(;lo != hi;) { vector<int>arr; for(int l = lo; l <= hi; l++) arr.pb(id[l]); bool ok = query(arr); if(ok) hi = out[id[lo]]; else lo = tin[id[lo]] + 1; } return lo; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...