2682: 【提高】分配

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:11 解决:7

题目描述

疫情期间,社会爱心人士及单位组织为疫情捐赠了大量物资。其中有n箱口罩物资需要小蓝为2 个疫情重灾区分配。每箱口罩的数量也不完全相等,且只能整箱分配。为了公平,尽量使2个疫情重灾区分得的口罩数量相等,也就是2个疫情区分得的口罩数量差值最小。
例如∶n为3,3箱口罩数量分别为200、300、110,按照要求分配,2个疫情区分得的口罩数量分别为310(200+110)和300。
这时小蓝犯愁了,不知道如何才能使2个疫情重灾区分得的口罩数量尽量接近。请你编写程序帮助小蓝解决这个问题。


输入

第一行输入一个正整数n(n≤10),表示有n箱口罩
第二行输入n个不完全相等的正整数(100≤每个正整数≤1000),表示每箱口罩的数量。正掉数之间以一个空格隔开

输出

输出两个正整数,分别表示2个重灾区分得口罩的数量,两个正整数之间一个空格隔开,且如果两个正整数不相同,需按照从大到小输出

样例输入 复制

3
200 300 110

样例输出 复制

310 300

提示

蓝桥杯 中级组真题 2022-1第4题


备注:
1. 可以考虑n位数字二进制的列表,要么全选,要么不选。
2. n位数字的二进制列表,即从1到2n