分积木
华为OD机考2025年7月11号切换正式机考题库为2025C卷,现在刷2025C卷真题,通过率将大大提高,刷得越多,通过率越高。专栏所有题目提供详细的思路讲解,多语言(C++、JAVA、Python、GO、JavaScript)源码实现,并提供
在线OJ系统在线刷题服务。
华为OD机试2025C卷真题题库目录|机考题库 + 算法考点详解
题目描述
Solo和koko是两兄弟,妈妈给了他们一大堆积木,每块积木上都有自己的重量。
现在他们想要将这些积木分成两堆。哥哥Solo负责分配,弟弟koko要求两个人获得的积木总重量“相等”(根据Koko的逻辑),个数可以不同,不然就会哭,但koko只会先将两个数转成二进制再进行加法,而且总会忘记进位(每个进位都忘记)。如当25(11101)加11(01011)时,koko得到的计算结果是18(10010):
11001
+01011
--------
10010
Solo想要尽可能使自己得到的积木总重量最大,且不让koko哭。
输入描述
第一行是一个整数N(2≤N≤100),表示有多少块积木;
第二行为空格分开的N个整数Ci(1≤Ci≤10^6),表示第i块积木的重量。
输出描述
如果能让koko不哭,输出Solo所能获得积木的最大总重量;否则输出“NO”。
用例1
输入
3
3 5 6
输出
11
用例2
输入
3
3 5 7
输出
NO