Submission #671445

#TimeUsernameProblemLanguageResultExecution timeMemory
671445dooompyEaster Eggs (info1cup17_eastereggs)C++17
100 / 100
22 ms2712 KiB
#include <bits/stdc++.h> #include "grader.h" using namespace std; vector<int> adj[100005]; vector<int> straight; bool able(int m) { vector<int> temp; for(int i = 0; i <= m; ++i) temp.push_back(straight[i]); return query(temp); } void dfs(int node, int par = -1) { straight.push_back(node); for (auto nxt : adj[node]) { if (nxt == par) continue; dfs(nxt, node); } } int findEgg (int N, vector < pair < int, int > > bridges) { straight.clear(); for (int i = 0; i <= N; i++) adj[i].clear(); for (int i = 0; i < bridges.size(); i++) { adj[bridges[i].first].push_back(bridges[i].second); adj[bridges[i].second].push_back(bridges[i].first); } dfs(1); int n = straight.size(); int l = 0, r = n-1; int ans = -1; while(l < r) { int m = (l + r) >> 1; if(able(m)) r = m; else l = m + 1; } return straight[r]; }

Compilation message (stderr)

eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:31:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   31 |     for (int i = 0; i < bridges.size(); i++) {
      |                     ~~^~~~~~~~~~~~~~~~
eastereggs.cpp:42:9: warning: unused variable 'ans' [-Wunused-variable]
   42 |     int ans = -1;
      |         ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...