제출 #199227

#제출 시각아이디문제언어결과실행 시간메모리
199227TAISA_Xylophone (JOI18_xylophone)C++14
100 / 100
104 ms504 KiB
#include "xylophone.h" #include <bits/stdc++.h> using namespace std; static int A[5000]; void solve(int N) { vector<int> s(N+1),t(N+1),u(N+1); for(int i=1;i<N;i++){ t[i]=query(i,i+1); } for(int i=1;i<N-1;i++){ int k=query(i,i+2); if(abs(t[i]+t[i+1])==abs(k)){ s[i+1]=0; }else{ s[i+1]=1; } } int b=0; auto check=[&]{ int mi=0; u[1]=0; for(int i=2;i<=N;i++){ if(b==0){ u[i]=u[i-1]+t[i-1]; }else{ u[i]=u[i-1]-t[i-1]; } mi=min(mi,u[i]); if(s[i]==1){ b^=1; } } bool f=false; for(int i=1;i<=N;i++){ u[i]+=(1-mi); if(u[i]==N){ f=true; } if(u[i]==1){ if(f){ return false; } } } for(int i=1;i<=N;i++){ answer(i,u[i]); } return true; }; if(check()){ return; } b=1; check(); }

컴파일 시 표준 에러 (stderr) 메시지

xylophone.cpp:4:12: warning: 'A' defined but not used [-Wunused-variable]
 static int A[5000];
            ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...