Submission #1220406

#TimeUsernameProblemLanguageResultExecution timeMemory
1220406theiuliusEaster Eggs (info1cup17_eastereggs)C++20
100 / 100
8 ms768 KiB
#include <bits/stdc++.h> #include "grader.h" #define pb push_back #define ss second #define ff first using namespace std; vector<int> v[520]; vector<int> vec; int vis[520]; void dfs(int x){ vis[x] = 1; vec.pb(x); for (auto h : v[x]){ if (!vis[h]){ dfs(h); } } } int findEgg (int N, vector < pair < int, int > > bridges){ for (auto h : bridges){ v[h.ss - 1].pb(h.ff - 1); v[h.ff - 1].pb(h.ss - 1); } dfs(0); cerr << vec.size() << endl; int l = 0, r = N - 2, ans = N - 1; while (l <= r){ int mid = (l + r) / 2; vector<int> vec1; for (int i = 0; i <= mid; i++){ vec1.pb(vec[i] + 1); } // cout << "ASK: "; // for (int& e : vec1) // cout << e << ' '; // cout << '\n'; bool b = query(vec1); // cout << l << ' ' << r << ' ' << mid << ' ' << b << '\n'; if (b){ r = mid - 1; ans = mid; }else{ l = mid + 1; } } //cout << ans + 1 << endl; return vec[ans] + 1; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...