Submission #1290498

#TimeUsernameProblemLanguageResultExecution timeMemory
1290498dirtblockXylophone (JOI18_xylophone)C++20
0 / 100
0 ms332 KiB
#include<bits/stdc++.h>
#include "xylophone.h"
using namespace std;

void solve(int n) {
	vector<int> a(n,0);
	a[1]=query(1,2);
	for(int i=2; i<n; i++) {
		int x1=query(i,i+1);
		int x2=query(i-1,i+1);
		a[i]=a[i-1]+x1*((abs(x1-x2)==abs(a[i-1]-a[i-2]))==(a[i-1]>a[i-2])? 1:-1);
	}
	int mn=1,mx=1;
	for(int i=2; i<n; i++) {
		if(a[i]<a[mn]) mn=i;
		if(a[i]>a[mx]) mx=i;
	}
	for(int i=1; i<=n; i++) {
		answer(i,(mn<mx? a[i-1]+1-a[mn]:n-a[i-1]+a[mn]));
	}

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...