Submission #107620

#TimeUsernameProblemLanguageResultExecution timeMemory
107620patrikpavic2Cop and Robber (BOI14_coprobber)C++17
0 / 100
2 ms640 KiB
#include "coprobber.h"
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <vector>
#include <set>
#include <map>

int mv = 0, pos, n, m;
bool a[MAX_N][MAX_N];

int start(int N, bool A[MAX_N][MAX_N]){
    for(int i = 0;i < MAX_N;i++){
        for(int j = 0;j < MAX_N;j++){
            a[i][j] = A[i][j];
        }
    }
    m = 0;
    while(A[m][m + 1]) m++;m++;
    n = N / m;
    return N / 2;
}

int nextMove(int R){
    if(a[R][pos]) return R;
    int Px = pos / m, Py = pos % m;
    int Rx = R / m, Ry = R % m;
    if((Px + Py) % 2 == (Rx + Ry) % 2) return pos;
    if(Px == Rx) {
        if(Py < Ry) return pos = pos + 1;
        return pos = pos - 1;
    }
    if(Px < Rx) return pos = pos + m;
    return pos = pos - m;
}

Compilation message (stderr)

coprobber.cpp: In function 'int start(int, bool (*)[500])':
coprobber.cpp:19:5: warning: this 'while' clause does not guard... [-Wmisleading-indentation]
     while(A[m][m + 1]) m++;m++;
     ^~~~~
coprobber.cpp:19:28: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'while'
     while(A[m][m + 1]) m++;m++;
                            ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...