Submission #996032

#TimeUsernameProblemLanguageResultExecution timeMemory
996032cnn008Xylophone (JOI18_xylophone)C++17
0 / 100
0 ms344 KiB
#include <bits/stdc++.h> #include "xylophone.h" using namespace std; int a[5005]; void solve(int n){ int l=1,r=n,mn=1; while(l<=r){ int mid=(l+r)/2; int val=query(mid,n); if(val==n-1){ mn=mid; r=mid-1; }else l=mid+1; } a[mn]=1; if(mn<n) a[mn+1]=query(mn,mn+1)-1; for(int i=mn+2; i<=n; i++){ int v=query(i-1,i); int l=query(i-2,i); int ifmin=a[i-1]-l; int ifmax=a[i-1]+l; if(max({a[i-2],a[i-1],ifmin})-min({a[i-2],a[i-1],ifmin})==l) a[i]=ifmin; else a[i]=ifmax; } if(mn>1) a[mn-1]=query(mn-1,mn)-1; for(int i=mn-2; i>=1; i--){ int v=query(i,i+1); int l=query(i,i+2); int ifmin=a[i+1]-l; int ifmax=a[i+1]+l; if(ifmin>0 and max({a[i+2],a[i+1],ifmin})-min({a[i+2],a[i+1],ifmin})==l) a[i]=ifmin; else a[i]=ifmax; } for(int i=1; i<=n; i++) answer(i,a[i]); return; }

Compilation message (stderr)

xylophone.cpp: In function 'void solve(int)':
xylophone.cpp:20:7: warning: unused variable 'v' [-Wunused-variable]
   20 |   int v=query(i-1,i);
      |       ^
xylophone.cpp:29:7: warning: unused variable 'v' [-Wunused-variable]
   29 |   int v=query(i,i+1);
      |       ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...