Submission #114841

# Submission time Handle Problem Language Result Execution time Memory
114841 2019-06-03T13:16:48 Z maruii Xylophone (JOI18_xylophone) C++14
0 / 100
2 ms 384 KB
#include "xylophone.h"
#include <algorithm>
#include <cstdio>

static int A[5000];
int X[5000], ans[5000];

void solve(int N) {
	for (int i = 0; i < N - 1; ++i) X[i] = query(i + 1, i + 2);
	ans[1] = X[0];
	for (int i = 0; i < N - 2; ++i) {
		int t = query(i + 1, i + 3);
		if (X[i] + X[i+1] == t) {
			if(i == 0 || ans[i+1] > ans[i]) ans[i+2] = ans[i] + t;
			else ans[i] = ans[i] - t;
		}
		else {
			if (i == 0 || ans[i+1] > ans[i]) ans[i+2] = ans[i+1] - X[i+1];
			else ans[i+2] = ans[i+1] + X[i+1];
		}
	}
	int m = *std::min_element(ans, ans + N) - 1;
	int a, b;
	for (int i = 0; i < N; ++i) {
		ans[i] -= m;
		if (ans[i] == 1) a = i;
		if (ans[i] == N) b = i;
	}
	for(int i = 1; i <= N; i++) {
		if (a > b) ans[i-1] = N + 1 - ans[i-1];
		answer(i, ans[i-1]);
	}
}

Compilation message

xylophone.cpp:5:12: warning: 'A' defined but not used [-Wunused-variable]
 static int A[5000];
            ^
xylophone.cpp: In function 'void solve(int)':
xylophone.cpp:30:3: warning: 'b' may be used uninitialized in this function [-Wmaybe-uninitialized]
   if (a > b) ans[i-1] = N + 1 - ans[i-1];
   ^~
xylophone.cpp:30:3: warning: 'a' may be used uninitialized in this function [-Wmaybe-uninitialized]
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Output is correct
2 Correct 2 ms 304 KB Output is correct
3 Incorrect 2 ms 256 KB Wrong Answer [7]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Output is correct
2 Correct 2 ms 304 KB Output is correct
3 Incorrect 2 ms 256 KB Wrong Answer [7]
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Output is correct
2 Correct 2 ms 304 KB Output is correct
3 Incorrect 2 ms 256 KB Wrong Answer [7]
4 Halted 0 ms 0 KB -