Submission #1257557

#TimeUsernameProblemLanguageResultExecution timeMemory
1257557cevatXylophone (JOI18_xylophone)C++20
100 / 100
26 ms464 KiB
#include "xylophone.h" //#include <bits/stdc++.h> using namespace std; void solve(int N) { int arr[N+1]; arr[1]=0; int ik[N+1],u[N+1]; for(int i=1;i<N;i++){ ik[i]=query(i,i+1); } for(int i=1;i<N-1;i++){ u[i]=query(i,i+2); } arr[2]=ik[1]; int y=1; for(int i=3;i<=N;i++){ if(ik[i-2]+ik[i-1]!=u[i-2]){ y = y * (-1); } arr[i]=arr[i-1]+ik[i-1]*y; } int mx = 0, mn = 0; int mxp = 1, mnp = 1; for(int i=2;i<=N;i++) { if(arr[i]>mx) { mx=arr[i]; mxp=i; } if(arr[i]<mn) { mn=arr[i]; mnp=i; } } if(mnp<mxp) { for(int i=1;i<=N;i++) { answer(i,arr[i]-mn+1); } } else { for(int i=1;i<=N;i++) { answer(i,mx-arr[i]+1); } } return; } /*int main(){ }*/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...