Submission #514765

#TimeUsernameProblemLanguageResultExecution timeMemory
514765amukkalirEaster Eggs (info1cup17_eastereggs)C++17
87 / 100
20 ms456 KiB
//in repentance and rest is your strenght, in quietness and trust is your salvation #include <bits/stdc++.h> #include "grader.h" using namespace std; #define pb push_back const int nax = 512; vector<int> adj[nax+5]; int f[nax+5]; bool vis[nax+5]; int cr = 1; void bfs() { queue<int> q; q.push(1); while(!q.empty()) { int u = q.front(); q.pop(); vis[u] = true; f[cr++] = u; for(int v : adj[u]) { if(!vis[v]) q.push(v); } } } int findEgg (int N, vector < pair < int, int > > bridges) { for(int i=1; i<=N; i++) { adj[i].clear(); f[i] = 0; vis[i] = false; } cr = 1; for(int i=0; i<bridges.size(); i++) { int u = bridges[i].first; int v = bridges[i].second; adj[u].pb(v); adj[v].pb(u); } bfs(); int lo = 1, hi = N; int ans = N; while(lo <= hi) { int mid = (lo+hi)/2; vector<int> vec; for(int i=1; i<=mid; i++) vec.pb(f[i]); if(query(vec)) { ans = f[mid]; hi = mid-1; } else { lo = mid+1; } } return ans; }

Compilation message (stderr)

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