Submission #763649

#TimeUsernameProblemLanguageResultExecution timeMemory
763649vjudge1Xylophone (JOI18_xylophone)C++17
0 / 100
1 ms208 KiB
#include<bits/stdc++.h> using namespace std; long long a[1000001]; int query(int x, int y); void answer(int x, int y); void solve(int n) { long long mini = INT_MAX, pos; a[1] = 0; a[2] = query(1, 2); for(int i = 3; i <= n; ++i) { long long temp1 = query(i - 1, i), temp2 = query(i - 2, i); if(temp2 != temp1 + a[i - 2] - a[i - 1] || temp2 == temp1 + a[i - 1] - a[i - 2]) a[i] = a[i - 1] + temp1; else a[i] = a[i - 1] - temp1; } for(int i = 1; i <= n; ++i) { if(mini > a[i]) { mini = a[i]; pos = i; } } for(int i = 1; i <= n; ++i) answer(i, a[i] - pos + 1); }

Compilation message (stderr)

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