Submission #67790

#TimeUsernameProblemLanguageResultExecution timeMemory
67790tempytemptempEaster Eggs (info1cup17_eastereggs)C++14
Compilation error
0 ms0 KiB
/* We found Despacito 5 during contest (not clickbait) */ #include "grader.h" #include <vector> #include <set> #include <cassert> using namespace std; #define read(x) freopen(x,"r",stdin) #define write(x) freopen(x,"w",stdout) #define cl(a,b) memset(a,b,sizeof(a)) #define all(x) x.begin(),x.end() #define rall(x) x.rbegin(),x.rend() #define ll long long #define ld long double #define vec vector #define vi vec<int> #define heap priority_queue #define res reserve #define pb push_back #define f(x,y,z) for(int x=(y); x<(z); x++) #define fd(x,y,z) for(int x=(y); x>=(z); x--) #define fit(x,y) for(auto x: y) #define srt(x) sort(all(x)) #define rsrt(x) sort(rall(x)) #define make_unique(x) sort(all((x))); (x).resize(unique(all((x))) - (x).begin()) #define pii pair<int,ll> #define ppi pair<pii,int> #define pip pair<int,pii> #define mp make_pair #define f1 first #define s2 second #define cdbg(x) cerr<<#x<<" = "<<x<<",\t"; #define cdbl cerr<<"\n----------\n"; #define pow2(x) ((x)*(x)) #define edist(x1, y1, x2, y2) (sqrt((pow2(x1-x2)+pow2(y1-y2)))) #define mdist(x1, y1, x2, y2) (abs((x1)-(x2))+abs((y1)-(y2))) #define y1 FullSensei #define mid ((ss+se)>>1) #define left (si<<1) #define right ((si<<1)+1) #define pi 3.141592653589793 #define popcount __builtin_popcount #define spc ' ' #define endl '\n' #define lb lower_bound bool checkbit(int x,int y){return (x&(1<<y));} int setbit(int x,int y){return (x^(1<<y));} const int dirs[4][2]={{1,0},{0,1},{-1,0},{0,-1}}; const int mod=1e9+7; const int p1=805306457; const int p2=1610612741; const int INF=1e9; int n; vi e[16+7]; bool possible[16+7]; int findEgg(int N, vector < pair < int, int > > bridges); int query(vector < int > islands); vi chosen; int chosenCnt; bool chosens[16+7]; int rem; void dfs(int root, int parent){ chosen.pb(root); if(possible[root]) chosenCnt++; chosens[root]=1; if(abs(rem-chosenCnt)<=1){ return; } fit(child,e[root]){ if(child==parent) continue; dfs(child,root); if(abs(rem-chosenCnt)<=1){ return; } } } int findEgg(int N, vector<pii>bridges){ n=N; assert(n<=16); fit(x,bridges){ e[x.f1].pb(x.s2); e[x.s2].pb(x.f1); } rem=n; while(rem>1){ chosen.clear(); cl(chosens,0); chosenCnt=0; for(int i=1; i<=n; i++){ if(possible[i]){ dfs(i,0); break; } } if(query(chosen)){ rem=chosenCnt; for(int i=1; i<=n; i++) if(possible[i] && chosens[i]==0) possible[i]=0; } else{ rem-=chosen.size(); for(int i=0; i<chosen.size(); i++) possible[chosen[i]]=0; } } for(int i=1; i<=n; i++) if(possible[i]) return i; }

Compilation message (stderr)

eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, long long int> >)':
eastereggs.cpp:110:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    for(int i=0; i<chosen.size(); i++)
                 ~^~~~~~~~~~~~~~
eastereggs.cpp:117:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
/tmp/ccrJt55l.o: In function `main':
grader.cpp:(.text.startup+0x1d7): undefined reference to `findEgg(int, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >)'
collect2: error: ld returned 1 exit status