爆零:
#include<bits/stdc++.h>
#define INF 0x3f3f3f
using namespace std;
int n,a[3000001],b[301],mx;
signed main(){
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
sort(a+1,a+n+1);
for(int i=n,j=1;j<=100&&i>=1;i--,j++)
b[j]=a[i];
for(int i=1;i<=min(100,n);i++)
for(int j=i;j<=min(100,n);j++)
if((b[i]&b[j])>mx&&i!=j)
mx=(b[i]&b[j]);
cout<<mx;
return 0;
}
100:
#include<bits/stdc++.h>
#define INF 0x3f3f3f
using namespace std;
int n,a[3000001],b[301],mx;
signed main(){
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
sort(a+1,a+n+1);
for(int i=n,j=1;j<=100&&i>=1;i--,j++)
b[j]=a[i];
for(int i=1;i<=min(100,n);i++)
for(int j=i;j<=min(100,n);j++)
if((b[i]&b[j])>=mx&&i!=j)
mx=(b[i]&b[j]);
cout<<mx;
return 0;
}