Submission #5757

#TimeUsernameProblemLanguageResultExecution timeMemory
5757baneling100Treasure (different grader from official contest) (CEOI13_treasure2)C++98
100 / 100
0 ms1224 KiB
#include "treasure.h"

int D[101][101];

void findTreasure(int N)
{
    int i, j, mid=N/2;

    for(i=N ; i>=1 ; i--)
        for(j=N ; j>=1 ; j--)
        {
            if(i<=mid)
            {
                if(j<=mid)
                    D[i][j]=D[i][N]+D[N][j]+countTreasure(i+1,j+1,N,N)-D[N][N];
                else
                    D[i][j]=D[N][j]-countTreasure(i+1,1,N,j);
            }
            else
            {
                if(j<=mid)
                    D[i][j]=D[i][N]-countTreasure(1,j+1,i,N);
                else
                    D[i][j]=countTreasure(1,1,i,j);
            }
        }
    for(i=1 ; i<=N ; i++)
        for(j=1 ; j<=N ; j++)
            if(D[i][j]-D[i-1][j]-D[i][j-1]+D[i-1][j-1])
                Report(i,j);
}

Compilation message (stderr)

grader.c: In function 'int main()':
grader.c:63:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         my_assert(strlen(A[i]+1) == N, "each line of the map must contain N zeroes or ones (before loop)");
                                  ^
#Verdict Execution timeMemoryGrader output
Fetching results...