제출 #865159

#제출 시각아이디문제언어결과실행 시간메모리
865159jk410Bali Sculptures (APIO15_sculpture)C++17
71 / 100
1057 ms2904 KiB
#include <iostream> using namespace std; typedef long long ll; const int MAX=40; int N,A,B; ll Y[2001]; bool DP[2001][2001]; int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); DP[0][0]=true; cin>>N>>A>>B; for (int i=1; i<=N; i++){ cin>>Y[i]; Y[i]+=Y[i-1]; } ll mask=0; for (int t=MAX; t>=0; t--){ mask^=(1LL<<t); for (int i=1; i<=N; i++){ for (int j=1; j<=i; j++){ DP[i][j]=false; for (int k=0; k<i; k++) DP[i][j]|=(DP[k][j-1]&!((Y[i]-Y[k])&mask)); } } bool flag=true; for (int i=A; i<=B; i++){ if (DP[N][i]){ flag=false; break; } } if (flag) mask^=(1LL<<t); } cout<<(((1LL<<MAX+1)-1)^mask); return 0; }

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

sculpture.cpp: In function 'int main()':
sculpture.cpp:38:22: warning: suggest parentheses around '+' inside '<<' [-Wparentheses]
   38 |     cout<<(((1LL<<MAX+1)-1)^mask);
      |                   ~~~^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...