Submission #1131053

#TimeUsernameProblemLanguageResultExecution timeMemory
1131053Champ_NamanBali Sculptures (APIO15_sculpture)C++20
71 / 100
1096 ms7812 KiB
#include<bits/stdc++.h> using namespace std; #define int long long #define nl '\n' int dp[2001][2001]; inline void solve(){ int n, a, b; cin>>n>>a>>b; int c[n+1]; for(int i=1; i<=n; i++) cin>>c[i]; int ans = (1ll<<42) - 1; for(int bit=41; bit>=0; bit--){ ans -= (1ll<<bit); dp[0][0] = 1; for(int i=1; i<=n; i++){ for(int k=1; k<=b; k++){ dp[i][k] = 0; int sum = 0; for(int j=i; j>0; j--){ sum += c[j]; if((sum | ans) == ans and dp[j-1][k-1]) dp[i][k] = 1; } } } int tf = 0; for(int i=a; i<=b; i++) if(dp[n][i]) tf = 1; if(!tf) ans += (1ll<<bit); } cout<<ans; } signed main(){ ios_base::sync_with_stdio(0); cin.tie(NULL);cout.tie(NULL); int t = 1; //cin>>t; while(t--) solve(); return 0; }
#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...