#include <iostream>
#include "xylophone.h"
using namespace std;
int a[1<<16];
void solve(int n){
a[1] = n + n;
int Min = 1, cur = 1;
while (cur < n){
int d = query(cur, cur + 1), dd;
if (Min == 1)
a[cur + 1] = a[cur] + d;
else
a[cur + 1] = a[cur] - d;
if (cur == n - 1)
break;
dd = query(cur, cur + 2);
Min = Min ^ (dd == d);
cur++;
}
int Mn = a[1] - 1, id1, idn;
for (int i=1;i<=n;i++)
Mn = min(Mn, a[i] - 1);
for (int i=1;i<=n;i++){
a[i] -= Mn;
if (a[i] == 1)
id1 = i;
if (a[i] == n)
idn = i;
}
for (int i=1;i<=n;i++)
answer(i, a[i] + (n + 1 - 2 * a[i]) * (id1 > idn));
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |