一、题目描述
给定一个数组nums,将元素分为若干个组,使得每组和相等,求出满足条件的所有分组中,组内元素和的最小值。
二、输入描述
第一行输入 m
接着输入m个数,表示此数组nums
数据范围:1<=m<=50, 1<=nums[i]<=50
三、输出描述
最小拆分数组和。
四、解题思路
虽然题意很简单,看着很简单,其实这道题是有点难度的,100分你能抽到这道题,自求多福吧,兄弟。
比如:
4 3 2 3 5 2 1
可以组合成
4 1
3 2
3 2
5
解题思路:
1、答案一定在最大值与所有数的和之间,拿到这个值看是否能够满足条件;
2、用深度优先搜索,搜索一种方法满足子数组合能够满足target值的解;
3、每次从上一次找的数后面的数开始递归,这个优化非常重要,不加的话会把之前的结果再找一遍,例如,我本次递归取了第2个数,然后下面再取第5个数,当我下