Submission #857531

#TimeUsernameProblemLanguageResultExecution timeMemory
857531Trisanu_DasXylophone (JOI18_xylophone)C++17
100 / 100
61 ms1200 KiB
#include "xylophone.h"
#include <bits/stdc++.h>
using namespace std;
 
int a[5001];
 
void solve(int n) {
	a[1] = 0;
	a[2] = query(1, 2);
	for(int i = 2; i < n; i++){
		int x = query(i, i + 1), y = query(i - 1, i + 1);
		a[i + 1] = a[i] + x * (a[i] - a[i - 1] < 0 ? 1 : -1) * (y == x + abs(a[i] - a[i - 1]) ? -1 : 1);
	}
	int mn = *min_element(a + 1, a + n + 1);
	int u, v;
	for(int i = 1; i <= n; ++i){
		a[i] -= mn;
		if(a[i] == 0) u = i;
		if(a[i] == n - 1) v = i;
	}
	bool flag = u < v;
	for(int i = 1; i <= n; ++i) answer(i, flag ? a[i] + 1 : n - a[i]);
}

Compilation message (stderr)

xylophone.cpp: In function 'void solve(int)':
xylophone.cpp:22:36: warning: 'v' may be used uninitialized in this function [-Wmaybe-uninitialized]
   22 |  for(int i = 1; i <= n; ++i) answer(i, flag ? a[i] + 1 : n - a[i]);
      |                              ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
xylophone.cpp:22:36: warning: 'u' may be used uninitialized in this function [-Wmaybe-uninitialized]
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...