# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
102128 | SpeedOfMagic | Xylophone (JOI18_xylophone) | C++17 | 100 ms | 504 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "xylophone.h"
#include <bits/stdc++.h>
using namespace std;
static int A[5000];
char has[5000];
void ans(int ind, int val) {
has[val] = 1;
A[ind] = val;
answer(ind + 1, val);
}
int n;
void sset(int i, int pr, int ppr) {
int p = query(min(i, pr) + 1, max(i, pr) + 1);
if (A[pr] - p > 0 && A[pr] + p <= n) {
int d = query(min(i, ppr) + 1, max(i, ppr) + 1);
if (max(max(A[pr] + p, A[pr]), A[ppr]) - min(min(A[pr] + p, A[pr]), A[ppr]) == d)
A[i] = A[pr] + p;
else
A[i] = A[pr] - p;
} else {
if (A[pr] - p <= 0)
A[i] = A[pr] + p;
else
A[i] = A[pr] - p;
}
ans(i, A[i]);
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |