#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 time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |