Submission #1113903

#TimeUsernameProblemLanguageResultExecution timeMemory
1113903julia_08Easter Eggs (info1cup17_eastereggs)C++17
100 / 100
18 ms592 KiB
#include <bits/stdc++.h> #include "grader.h" using namespace std; const int MAXN = 600; vector<int> adj[MAXN]; int pre[MAXN]; int t = 0; void dfs(int v, int p){ pre[v] = ++ t; for(auto u : adj[v]) if(u != p) dfs(u, v); } bool ask(int k, int n){ vector<int> islands; for(int i=1; i<=n; i++){ if(pre[i] <= k){ islands.push_back(i); } } return query(islands); } int bs(int n){ int l = 1, r = n; while(l < r){ int m = l + (r - l) / 2; if(ask(m, n)) r = m; else l = m + 1; } return r; } int findEgg(int n, vector<pair<int, int>> bridges){ t = 0; for(int i=1; i<=n; i++) adj[i].clear(); for(auto [a, b] : bridges){ adj[a].push_back(b); adj[b].push_back(a); } dfs(1, 1); int x = bs(n); for(int i=1; i<=n; i++){ if(pre[i] == x){ return i; } } }

Compilation message (stderr)

eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:70:1: warning: control reaches end of non-void function [-Wreturn-type]
   70 | }
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...