#241. 数组分组求和:等和子集划分
数组分组求和:等和子集划分
数组分组求和
题目背景
聪聪正在玩一个数字游戏。
题目描述
给定一个整数数组,是否可能将这些整数分成两组,使得两组的和相等?每个整数必须且只能属于其中一组。编写一个递归辅助方法,该方法可以接受任意你喜欢的参数,并从 splitArray() 方法中对你的递归辅助方法进行初始调用。(不需要循环。)
输入格式
输入以如下格式从标准输入中给出。
输入包含一行,表示一个整数数组。数组元素之间用空格分隔。
输出格式
输出以如下格式输出到标准输出中。
如果可以将整数分成两组使其和相等,则输出
true;否则输出false。
样例
[2 2]
true
[2 3]
false
[5 2 3]
true
样例解释
对于样例1,数组 [2 2] 可以分成两组:{2} 和 {2},它们的和都为 。
对于样例2,数组 [2 3] 的总和为 ,无法分成两组使和相等。
对于样例3,数组 [5 2 3] 可以分成两组:{5} 和 {2, 3},它们的和都为 。
数据范围
每个测试用例的时间限制为 秒,内存限制为 KiB。