Submission #41221

#TimeUsernameProblemLanguageResultExecution timeMemory
41221wzyTreasure (different grader from official contest) (CEOI13_treasure2)C++14
Compilation error
0 ms0 KiB
#include "treasure.h"
using namespace std;
bool ans[110][110];
 int n;




void solve(int x1 , int x2 , int y1 , int y2){
	if(max(x1 , x2) > n || min(x1,x2) < 1 || max(y1 , y2) > n || min(y1 , y2) < 1) return;
	if(x2 < x1 || y2 < y1) return ;
	int p = countTreasure(x1, y1 , x2 , y2);
	if(p == 0){
		return;
	}
	else{
		if(p == (x2 - x1 + 1)*(y2 - y1 + 1)){
			for(int i = x1 ; i <= x2 ; i++){
				for(int j = y1 ; j <= y2 ; j++) ans[i][j] |=1;
			}
			return;
		}
		else{
			solve(x1 , (x1+x2)/2 , y1 , (y1+y2)/2);
			solve(x1 , (x1 + x2)/2 , (y1 + y2)/2 + 1 , y2);
			solve((x1 + x2)/2 + 1 , x2 , y1  , (y1 + y2)/2);
			solve((x1 + x2)/2 + 1 , x2 , (y1 + y2)/2 + 1 , y2);
		}
	}
}


void findTreasure (int N) {
	n = N;
	solve(1 , N , 1 , N);
   for(int i = 1 ; i <= N ; i++){
   		for(int j = 1 ; j <= N ; j++){
   			if(ans[i][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)");
                                  ^
treasure.cpp: In function 'void solve(int, int, int, int)':
treasure.cpp:10:16: error: 'max' was not declared in this scope
  if(max(x1 , x2) > n || min(x1,x2) < 1 || max(y1 , y2) > n || min(y1 , y2) < 1) return;
                ^
treasure.cpp:10:34: error: 'min' was not declared in this scope
  if(max(x1 , x2) > n || min(x1,x2) < 1 || max(y1 , y2) > n || min(y1 , y2) < 1) return;
                                  ^
treasure.cpp: In function 'void findTreasure(int)':
treasure.cpp:38:20: warning: comparison of constant ''1'' with boolean expression is always false [-Wbool-compare]
       if(ans[i][j] == '1') Report(i,j);
                    ^