AT_dwacon5th_prelims_b Sum AND Subarrays
题目描述
有一天,dwango 公司的员工 Niwango 君发现了一个长度为 $N$ 的整数序列 $(a_1,\ ...,\ a_N)$。Niwango 君对数列 $a$ 的性质产生了兴趣。
数列 $a$ 的任意非空连续子序列 $a_l,\ ...,\ a_r$($1 \leq l \leq r \leq N$)的**美丽值**定义为 $a_l + ... + a_r$。Niwango 君想知道,在所有可能的 $N(N+1)/2$ 个非空连续子序列中,任选 $K$ 个,计算它们美丽值的按位与(AND)时,能得到的最大值是多少(选取的子序列之间可以有重叠元素)。
请你帮他求出这个最大值。
输入格式
输入以如下格式从标准输入给出。
> $N$ $K$ $a_1$ $a_2$ $...$ $a_N$
输出格式
请输出答案。
说明/提示
## 限制条件
- $2 \leq N \leq 1000$
- $1 \leq a_i \leq 10^9$
- $1 \leq K \leq N(N+1)/2$
- 输入的所有数均为整数
## 样例说明 1
不同的非空连续子序列共有 $10$ 个。全部列举如下:
- 从第 1 个元素开始的:$\{2\},\ \{2, 5\},\ \{2, 5, 2\},\ \{2, 5, 2, 5\}$
- 从第 2 个元素开始的:$\{5\},\ \{5, 2\},\ \{5, 2, 5\}$
- 从第 3 个元素开始的:$\{2\},\ \{2, 5\}$
- 从第 4 个元素开始的:$\{5\}$
(注意:即使数列元素相同,只要起始下标不同,也视为不同的子序列。)
在这些子序列中,任选不同的 $2$ 个子序列,其美丽值的按位与(AND)能得到的最大值是 $12$。这是选择 $\{5, 2, 5\}$(美丽值 $12$)和 $\{2, 5, 2, 5\}$(美丽值 $14$)时可以达到的。
由 ChatGPT 4.1 翻译