Submission #1340632

#TimeUsernameProblemLanguageResultExecution timeMemory
1340632javkhlantogsBali Sculptures (APIO15_sculpture)C++20
0 / 100
1 ms344 KiB
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int main(){
	ll n,a,b,i,j,q,k;
	cin>>n>>a>>b;
	vector<ll> age(n+1),pre(n+2,0);
	for(i=1 ; i<=n ; i++) cin>>age[i];
	for(i=1 ; i<=n ; i++) pre[i]=pre[i-1]+age[i];
	ll ans=0;
	if(a==1){
		
		return 0;
	}
	for(i=41 ; i>=0 ; i--){
		ll mask=ans+(1LL<<i)-1;
		vector<vector<bool>> dp(b+1,vector<bool>(n+1,0));
		for(j=1 ; j<=n ; j++){
			if(pre[j]&(~mask)) continue;
			dp[0][j]=1;
		}
		for(j=1 ; j<=b ; j++){
			for(k=1 ; k<=n ; k++){
				for(q=1 ; q<k ; q++){
					if(dp[j-1][q]==0) continue;
					if((pre[k]-pre[q])&(~mask)) continue;
					dp[j][k]=1;
				}
			}
		}
		bool check=0;
		for(j=a ; j<=b ; j++) if(dp[j][n]) check=1;
		if(check) continue;
		ans+=(1LL<<i);
	}
	
	cout<<ans<<"\n";
	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...