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;
    }


}
View Code

 

以上是关于CF1365E Maximum Subsequence Value(鸽巢原理)的主要内容,如果未能解决你的问题,请参考以下文章

CF888E Maximum Subsequence

CF886E Maximum Element

cf Maximum Subrectangle

CF 375B Maximum Submatrix 2[预处理 计数排序]

CF1157F Maximum Balanced Circle

[Luogu] CF888E Maximum Subsequence