CF1365E Maximum Subsequence Value(鸽巢原理)
Posted ctyakwf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CF1365E Maximum Subsequence Value(鸽巢原理)相关的知识,希望对你有一定的参考价值。
因为题目已知至少要k-2个
假设我们取了k个,使得答案最大
那么因为对于每个数来说至少k-2个数在这位是1
因此我们只要任意选三个数,都能保证在每一位上都有至少一个数为1
#include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e5+10; ll a[N]; int main(){ int n; cin>>n; int i; for(i=1;i<=n;i++){ cin>>a[i]; } ll ans=0; if(n==1){ cout<<a[1]<<endl; } else if(n==2){ cout<<(a[1]|a[2])<<endl; } else{ int j,k; for(i=1;i<=n;i++){ for(j=i+1;j<=n;j++){ for(k=j+1;k<=n;k++) ans=max(ans,a[i]|a[j]|a[k]); } } cout<<ans<<endl; } }
以上是关于CF1365E Maximum Subsequence Value(鸽巢原理)的主要内容,如果未能解决你的问题,请参考以下文章
CF 375B Maximum Submatrix 2[预处理 计数排序]