4028: 按位与

题目内容

输入格式
输入第一行一个整数 n n n

第二行 n n n 个整数 a 1 , a 2 , ⋯   , a n a_1, a_2, \cdots, a_n a1,a2,,an
输出格式
输出一行一个整数表示答案。

样例 1 输入
5
6 2 3 4 7
样例 1 输出
7

#include
using namespace std;
const int N=1e5+114;
long long int n,a[N],ans=-0x3f3f;
long long int af[N],al[N];
int main(){
	scanf("%d",&n);
	//af[0]=1;al[n+1]=1;
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
		if(i==1) af[i]=a[i];
		else af[i]=af[i-1]&a[i];
		//cout<
	}
	//cout<
	for(int i=n;i>=1;i--){
		if(i==n) al[i]=a[i];
		else al[i]=al[i+1]&a[i];
		//cout<
	}
	//cout<
	for(int i=1;i<n;i++){
		ans=max(ans,af[i]+al[i+1]);
	}
	cout<<ans;
	return 0;
}

封面

4028: 按位与_第1张图片

你可能感兴趣的:(c++,算法,开发语言)