Submission #1088238

#TimeUsernameProblemLanguageResultExecution timeMemory
1088238vahagngEaster Eggs (info1cup17_eastereggs)C++17
0 / 100
184 ms131072 KiB
#include <bits/stdc++.h> #include "grader.h" using namespace std; vector<int>comp; vector<int>adj[514]; bool visited[514]; bool kara[514]; int total, cnt; void dfs(int node, int parent){ visited[node] = true; comp.push_back(node); cnt += kara[node]; if(cnt == total/2) return; for(auto i : adj[node]){ if(i == parent) continue; dfs(i, node); } } int findEgg (int N, vector<pair<int,int>> bridges) { cnt = 0; for(int i = 1; i <= N; i++){ kara[i] = true; visited[i] = false; total++; } for(auto i : bridges){ int u = i.first, v = i.second; adj[u].push_back(v); adj[v].push_back(u); } while(total > 1){ dfs(1,1); int pat = query(comp); if(pat){ for(int i = 1; i <= N; i++){ kara[i] &= visited[i]; } }else{ for(auto i : comp) kara[i] = false; } comp.clear(); cnt = 0; total = 0; for(int i = 1; i <= N; i++){ total += kara[i]; visited[i] = false; } } for(int i = 1; i <= N; i++){ if(kara[i]) return i; } return N; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...