#include <bits/stdc++.h>
using namespace std;
#define int long long
const int MAXN = 2005, INF = 1e18;
int dp[MAXN][MAXN], v[MAXN];
signed main(){
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
int n,a,b; cin>>n>>a>>b;
for(int i = 1; i <= n; i++)cin>>v[i];
for(int x = 1; x <= b; x++)dp[n+1][x] = INF;
for(int i = n; i >= 1; i--){
dp[i][0] = INF;
for(int x = 1; x <= b; x++){
dp[i][x] = INF;
int sum = 0;
for(int j = i+1; j <= n+1; j++){
sum += v[j-1];
dp[i][x] = min(dp[i][x], dp[j][x-1] | sum);
}
}
}
int ans = INF;
for(int x = a; x <= b; x++)ans = min(ans, dp[1][x]);
cout<<ans<<"\n";
}
# | 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... |