Submission #548589

#TimeUsernameProblemLanguageResultExecution timeMemory
548589beaconmcXylophone (JOI18_xylophone)C++14
100 / 100
92 ms360 KiB
#include <bits/stdc++.h> #include "xylophone.h" typedef long long ll; using namespace std; #define FOR(i, x, y) for(ll i=x; i<y; i++) #define FORNEG(i, x, y) for(ll i=x; i>y; i--) #define fast() ios_base::sync_with_stdio(false);cin.tie(NULL) #define ll int ll twodiff[5001]; ll threediff[5001]; ll max(ll x[5001]){ ll maxi = -1000000; FOR(i,0,5002){ if (x[i]!=0){ maxi = max(maxi, x[i]); } } return maxi; } ll min(ll x[5001]){ ll mini = 1000000; FOR(i,0,5002){ if (x[i]!=0){ mini = min(mini, x[i]); } } return mini; } void solve(ll n){ ll sussy[5001]; FOR(i,0,5001){ twodiff[i] = 0; threediff[i] = 0; sussy[i] = 0; } FOR(i,1,n){ twodiff[i] = query(i, i+1); } FOR(i,1,n-1){ threediff[i] = query(i, i+2); } FOR(i,2,n){ if (threediff[i-1] == abs(twodiff[i-1]) + abs(twodiff[i])){ twodiff[i] *= twodiff[i-1] / abs(twodiff[i-1]); }else{ twodiff[i] *= -1*(twodiff[i-1] / abs(twodiff[i-1])); } } sussy[1] = twodiff[1]; FOR(i,2,n){ sussy[i] = sussy[i-1] + twodiff[i]; } ll sus = min(sussy); if (sus>0) sus=0; ll amog, us; FOR(i,0,n){ sussy[i] -= sus-1; if (sussy[i] == 1){ amog = i; } if (sussy[i] == n) us = i; } if (amog > us){ sussy[0] = 0; FOR(i,1,n) twodiff[i] *= -1; sussy[1] = twodiff[1]; FOR(i,2,n){ sussy[i] = sussy[i-1] + twodiff[i]; } ll sus = min(sussy); if (sus>0) sus=0; FOR(i,0,n){ sussy[i] -= sus-1; } } FOR(i,0,n){ answer(i+1, sussy[i]); } }

Compilation message (stderr)

xylophone.cpp: In function 'void solve(int)':
xylophone.cpp:75:5: warning: 'amog' may be used uninitialized in this function [-Wmaybe-uninitialized]
   75 |     if (amog > us){
      |     ^~
xylophone.cpp:75:5: warning: 'us' 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...