首页 > 试题广场 >

暴力出奇迹

[编程题]暴力出奇迹
给定一个序列,寻找一对l,r,满足1 ≤ l ≤ r ≤ n
最大化的值
其中表示将al,al+1, ... , ar按位与后的结果

输入描述:
第一行一个整数n,表示数列长度.
第二行有n个整数,表示这个数列的初始数值.


输出描述:
一行一个整数表示答案.
示例1

输入

10
7 9 9 4 0 0 8 8 4 7 

输出

162

备注:
数据范围
(以下是测试点编号)





保证1 ≤ n ≤ 105, 0 ≤ ai ≤ 105,且数据合法,且ai是非负整数
头像 WDgaster
发表于 2022-03-21 12:07:54
暴力枚举最高位,将其分成数个子序列,各个子序列分别计算最大值 代码 void solve(){ int n; cin >> n; for (int i = 1; i <= n; i++) cin >> a[i]; ll ans 展开全文