Submission #551796

#TimeUsernameProblemLanguageResultExecution timeMemory
551796QwertyPiXylophone (JOI18_xylophone)C++14
Compilation error
0 ms0 KiB
#include "xylophone.h"

static int A[5000];
int d[5000], sg[5001];
void solve(int N) {
	for(int i = 1; i <= N - 1; i++){
		d[i] = query(i, i + 1);
	}
	sg[1] = 1;
	int cur_val = d[1];
	for(int i = 2; i <= N - 1; i++){
		int val = query(1, i + 1);
		if(abs(cur_val + d[i]) == val){
			sg[i] = 1;
			cur_val += d[i];
		}else{
			sg[i] = -1;
			cur_val -= d[i];
		}
	}
	A[1] = 1;
	for(int i = 2; i <= N; i++){
		A[i] = A[i - 1] + d[i - 1] * sg[i - 1];
	}
	
	int mn = N + 1;
	for(int i = 1; i <= N; i++){
		mn = min(A[i], mn);
	}
	for(int i = 1; i <= N; i++){
		A[i] += 1 - mn;
	}
	
	if(A[1] > A[N]){
		for(int i = 1; i <= N; i++){
			A[i] = N + 1 - i;
		}
	}

	for(int i = 1; i <= N; i++) {
		answer(i, A[i]);
	}

}

Compilation message (stderr)

xylophone.cpp: In function 'void solve(int)':
xylophone.cpp:13:6: error: 'abs' was not declared in this scope
   13 |   if(abs(cur_val + d[i]) == val){
      |      ^~~
xylophone.cpp:28:8: error: 'min' was not declared in this scope; did you mean 'mn'?
   28 |   mn = min(A[i], mn);
      |        ^~~
      |        mn