Submission #739981

#TimeUsernameProblemLanguageResultExecution timeMemory
739981Ahmed57Bali Sculptures (APIO15_sculpture)C++14
100 / 100
118 ms468 KiB
#include <bits/stdc++.h> using namespace std; //Fast int main(){ ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0); long long n,a,b; cin>>n>>a>>b; long long arr[n+1] = {0}; for(int i = 0;i<n;i++){ cin>>arr[i]; } long long dp1[n+1] = {0}; long long dp2[n+1] = {0}; dp1[n] = 0;dp2[n] = 0; long long num = (1LL<<60)-1 , sum = 0,mi = 1e18,ma = 0; for(long long bi = 59;bi>=0;bi--){ num^=(1LL<<bi); for(long long i = n-1;i>=0;i--){ sum = arr[i]; mi = 1e18; ma = 0; for(int j = i+1;j<=n;j++){ if((sum|num)==num){ mi = min(mi,dp1[j]+1); ma = max(ma,dp2[j]+1); } sum+=arr[j]; } dp1[i] = mi; dp2[i] = ma; } if(dp1[0]>b||dp2[0]<a){ num^=(1LL<<bi); } } cout<<num<<endl; }
#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...