Submission #753903

#TimeUsernameProblemLanguageResultExecution timeMemory
753903XiaoyangEaster Eggs (info1cup17_eastereggs)C++17
100 / 100
21 ms472 KiB
#include<bits/stdc++.h> using namespace std; #define fi first #define se second #define pii pair<int,int> #define pll pair<long long,long long> #define pb push_back #define debug(x) cerr<<#x<<"="<<x<<endl #define pq priority_queue #define inf 1ll<<60 #define rep(i,a,b) for (int i=a;i<(b);i++) #define MP make_pair #define SZ(x) (int(x.size())) #define ll long long #define mod 1000000007 #define ALL(x) x.begin(),x.end() #define endl "\n" void inc(ll &a,ll b) {a=(a+b)%mod;} void dec(ll &a,ll b) {a=(a-b+mod)%mod;} int lowbit(ll x) {return x&(-x);} ll p0w(ll base,ll p) {ll ret=1;while(p>0){if (p%2ll==1ll) ret=ret*base%mod;base=base*base%mod;p/=2ll;}return ret;} #include "grader.h" vector<int>edge[513],id; void dfs(int u, int fa){ id.pb(u); for(auto x:edge[u]){ if(x==fa)continue; dfs(x,u); } } int findEgg (int N, vector < pair < int, int > > bridges){ rep(i,0,N+1)edge[i].clear(); id.clear(); for(auto x:bridges){ edge[x.fi].pb(x.se); edge[x.se].pb(x.fi); } dfs(1,-1); ll lo=0,hi=N-1; while(lo<hi){ ll mid=lo+hi+1>>1; vector<int>left; rep(i,lo,mid)left.pb(id[i]); if (query(vector<int>(id.begin(), id.begin() + mid)))hi=mid-1; else lo=mid; } return id[lo]; }

Compilation message (stderr)

eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:44:15: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   44 |   ll mid=lo+hi+1>>1;
      |          ~~~~~^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...