Submission #340223

#TimeUsernameProblemLanguageResultExecution timeMemory
340223ogibogi2004Cop and Robber (BOI14_coprobber)C++14
Compilation error
0 ms0 KiB
#include "coprobber.h" #include<bits/stdc++.h> using namespace std; const int MAXN=512; /* 0-cop 1-robber */ int wl[MAXN][MAXN][2],cpos; pair<pair<int,int>,int> nextMove1[MAXN][MAXN][2]; vector<pair<pair<int,int>,bool> > g[MAXN][MAXN][2]; vector<pair<pair<int,int>,bool> > g1[MAXN][MAXN][2]; int start(int n, bool A[MAXN][MAXN]) { for(int c=0;c<n;c++) { for(int r=0;r<n;r++) { for(int turn=0;turn<=1;turn++) { if(turn==0) { wl[c][r][turn]=1; for(int i=0;i<n;i++) { if(i==c||A[i][c]) { g[c][r][(bool)turn].push_back({{i,r},(bool)1-turn}); g1[i][r][(bool)1-turn].push_back({{c,r},(bool)turn}); } } } else { for(int i=0;i<n;i++) { if(A[i][r]) { g[c][r][turn].push_back({{c,i},1-turn}); g1[c][i][1-turn].push_back({{c,r},turn}); wl[c][r][turn]++; } } } if(c==r)wl[c][r][turn]=0; } } } queue<pair<pair<int,int>,int> >q; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { for(int turn=0;turn<2;turn++) { if(wl[i][j][turn])q.push({{i,j},turn}); } } } while(!q.empty()) { pair<pair<int,int>,int> u=q.front();q.pop(); for(auto v:g1[u.first.first][u.first.second][u.second]) { wl[v.first.first][v.first.second][v.second]--; if(wl[v.first.first][v.first.second][v.second]==0) { nextMove1[v.first.first][v.first.second][v.second]=u; q.push(v); } } } for(int i=0;i<n;i++) { bool ok=1; for(int j=0;j<n;j++) { if(wl[i][j][1]>0)ok=0; } if(ok) { cpos=i; return i; } } return -1; } int nextMove(int R) { pair<pair<int,int>,int> gg=nextMove1[cpos][R][0]; cpos=gg.first.first; return cpos; }

Compilation message (stderr)

/tmp/ccp7NMWR.o: In function `main':
grader.cpp:(.text.startup+0x164): undefined reference to `start(int, bool (*) [500])'
collect2: error: ld returned 1 exit status