Submission #15973

#TimeUsernameProblemLanguageResultExecution timeMemory
15973gs14004Cop and Robber (BOI14_coprobber)C++14
Compilation error
0 ms0 KiB
#include "coprobber.h" #include <cstdio> #include <queue> #include <cstring> using namespace std; const int MAX_N = 500; int indeg[MAX_N][MAX_N][2]; queue<int> qx, qy, qd; bool vis[500][500][2]; int nxt[500][500]; int pos; int start(int N, bool A[MAX_N][MAX_N]) { for (int i = 0; i < N; i++){ for (int j = 0; j < N; j++){ if (i == j){ continue; } for (int k = 0; k < N; k++){ if (A[i][k]){ indeg[i][j][0] = 1; } if (A[k][j]){ indeg[i][j][1]++; } } } } for (int i = 0; i < N; i++){ for (int j = 0; j < N; j++){ for (int k = 0; k < 2; k++){ if (indeg[i][j][k] == 0){ qx.push(i), qy.push(j), qd.push(k); vis[i][j][k] = 1; } } } } while (!qx.empty()){ int xf = qx.front(); int yf = qy.front(); int df = qd.front(); qx.pop(), qy.pop(), qd.pop(); if (df == 1){ for (int i = 0; i < N; i++){ if (!vis[i][yf][0]){ indeg[i][yf][0]--; if (indeg[i][yf][0] == 0){ qx.push(i); qy.push(yf); qd.push(0); vis[i][yf][0] = 1; nxt[xf][yf] = i; } } } } else{ for (int i = 0; i < N; i++){ if (!vis[xf][i][1]){ indeg[xf][i][1]--; if (indeg[xf][i][1] == 0){ qx.push(xf); qy.push(i); qd.push(1); vis[xf][i][1] = 1; } } } } } for (int i = 0; i < N; i++){ int fnd = 0; for (int j = 0; j < N; j++){ if (!vis[i][j][0]){ fnd = 1; break; } } if (!fnd) return pos = i; } return -1; } int nextMove(int R) { return pos = nxt[pos][R]; }

Compilation message (stderr)

coprobber.cpp:6:11: error: redefinition of 'const int MAX_N'
 const int MAX_N = 500;
           ^~~~~
In file included from coprobber.cpp:1:0:
coprobber.h:4:11: note: 'const int MAX_N' previously defined here
 const int MAX_N = 500;
           ^~~~~