407748: GYM102889 I Poison AND^OR Affection
Description
小钾是一名音乐游戏玩家!现在,他正在回顾几年前的一场比赛记录——「G2R2014 "GO BACK 2 YOUR ROOTS"」。在这场比赛中,三名作曲者需要组成一个队伍进行创作,同时每人提交一份作品,共计三个作品参赛。在结束投稿后的展览期间,观众可以自由游玩所有队伍的作品,并为喜欢的作品提交评分。队伍所有作品获得的总分越高,队伍的排名也越靠前。
展览阶段持续了 k 天。一个作品在展览期间共获得了 n 个评分,且按照评分时间升序排序后依次为 a1, a2, ..., an。作品在某一天获得的所有评分是序列中连续的一段 al, al + 1, ..., ar,且当天的影响力值可由下式计算:
其中 为按位与, 为按位或, 为按位异或。一个作品获得的总影响力值,是它在每一天的影响力值的总和。
小钾找到了某个作品在 k 天内的评分,且按照评分时间升序排序后依次为 a1, a2, ..., an。然而由于数据丢失,他并不知道每一个评分具体是在第几天给出的。现在,小钾想知道,在依次为所有评分重新指定一个日期,且每天至少有一个评分后,作品的总影响力值最大可能是多少。请注意日期的指定应当合法:对于 a1, a2, ..., an,它们对应的评分日期非降。
请你编写一个程序,帮小钾解决这个问题。
Input第一行,两个空格分开的整数 n, k (1 ≤ k ≤ n ≤ 2, 000),含义见题目描述。
第二行,共 n 个整数 ai (0 ≤ ai ≤ 109),代表作品按照评分时间升序排序后的评分。
Output输出一行一个整数,表示作品可能达到的最大总影响力值。
ExamplesInput5 2 3 1 2 5 4Output
9Input
7 4 11 45 14 19 19 8 10Output
94Note
样例 1 中,一种可能的指定日期为:
- 第 1, 2 个评分在第 1 天给出,获得的评分为 。
- 第 3, 4, 5 个评分在第 2 天给出,获得的评分为 。
作品的总影响力值为 f(1, 2) + f(3, 5) = 2 + 7 = 9。
在 C, C++, Python 3 和 Java 中,按位与、按位或、按位异或这三项操作分别对应了 "&"、"|"、"^" 三个运算符(不含引号)。含义分别为,两个非负整数进行相应操作后,结果中二进制某一位上为 1,当且仅当操作数的同一位上"均为 1"、"某一个为 1"、"恰好只有一个为 1"。