P10512 序列合并
题目描述
给定一个长度为 $n$ 的非负整数序列 $\{a_n\}$,你可以进行 $k$ 次操作,每次操作你选择两个相邻的数,把它们合并成它们的按位或。
形式化地,一次操作中,你选择一个下标 $i$($1 \le i < n$),然后把原序列变成 $\{a_1,a_2,\cdots,a_i \operatorname{or} a_{i+1},a_{i+2},\cdots,a_n\}$。
求 $k$ 次操作后所有数按位与的最大值。
输入格式
第一行包含两个正整数 $n,k$。
第二行包含 $n$ 个非负整数,其中第 $i$ 个非负整数为 $a_i$。
输出格式
输出一行,包含一个正整数,代表答案。
说明/提示
**【样例解释】**
一种合法的方案:
- 第一次操作,选择第一个数和第二个数合并,序列变为 $\{3,2,3,1\}$。
- 第二次操作,选择第三个数和第四个数合并,序列变为 $\{3,2,3\}$。
最终所有数的按位与为 $2$。可以证明不存在更优的方案。
**【数据范围】**
- 对于 $25\%$ 的数据,$n \le 20$。
- 对于另外 $25\%$ 的数据,$k=n-2$。
对于所有数据,保证 $1 \le k