传统题 1000ms 256MiB

循环位运算

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

问题描述

给定 nn 个数 AiA_i​,每个数我们都将其视为一个 3232 位的二进制数。 你可以进行 mm 次操作,每次选择任意一个数将其循环左移一次。

循环左移表示将某个数的二进制位均左移一位,同时最高位移动到最低位。 例如对于一个 88 位二进制数 10010010,循环左移一次后为 00100101,两次后为 01001010

问做完 mm 次操作后,nn 个数的和最大是多少。

输入格式

输入的第一行包含两个整数 n,mn,m,用一个空格分隔。 接下来 nn 行,每行包含一个整数 AiA_i​。

输出格式

输出一行包含一个整数表示答案。

3 9
2365587456
2399141888
9437184
7535067152

评测用例规模与约定

对于 30%30\% 的评测用例,n,m12n,m≤12

对于 60%60\% 的评测用例,n,m100n,m≤100

对于所有评测用例,1n,m10001≤n,m≤10000Ai<2320≤A_i<2^{32}

赛前模拟一

未参加
状态
已结束
规则
乐多
题目
10
开始于
2025-6-8 9:00
结束于
2025-6-8 13:00
持续时间
4 小时
主持人
参赛人数
10