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;
int ans[5005], D[5005], E[5005];
int check(int N){
for(int i=3;i<=N;i++){
ans[i] = ans[i-1] + D[i];
if(max({ans[i-2], ans[i-1], ans[i]}) - min({ans[i-2], ans[i-1], ans[i]}) != E[i])ans[i] = ans[i-1] - D[i];
}
int minpos = 1, maxpos = 1;
for(int i=1;i<=N;i++){
if(ans[minpos] > ans[i])minpos = i;
if(ans[maxpos] < ans[i])maxpos = i;
}
for(int i=1;i<=N;i++)ans[i] += (2 - ans[minpos]);
return (minpos < maxpos);
}
void solve(int N) {
for(int i=2;i<=N;i++)D[i] = query(i-1, i);
for(int i=3;i<=N;i++)E[i] = query(i-2, i);
ans[1] = 0;
ans[2] = 0 + D[2];
if(!check(N)){
ans[2] = 0 - D[2];
ans[1] = 0;
int x = check(N);
}
for(int i=1;i<=N;i++)answer(i, ans[i]);
}
Compilation message (stderr)
xylophone.cpp: In function 'void solve(int)':
xylophone.cpp:27:7: warning: unused variable 'x' [-Wunused-variable]
27 | int x = check(N);
| ^
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |