算法 |
您所在的位置:网站首页 › 数组切割子数组最大子数组和最小 › 算法 |
作者:陈太汉 一个整数数组,长度为n,将其分为m份,使各份的和相等,求m的最大值 比如{3,2,4,3,6} 可以分成{3,2,4,3,6} m=1; {3,6}{2,4,3} m=2 {3,3}{2,4}{6} m=3 所以m的最大值为3 算法 原理的思想是将大问题转换成小问题。就{3,2,4,3,6}的操作步骤: 第一步:想将数组递减排序得{6,4,3,3,2},求出数组中所有数的和m=18,第一个最大的数b=6, m/b=3余数为0,当除数为1,余数为0时终止。当余数不为0时,转到第三步。当余数为0时将数组划分为{6},{4,3,3,2}两个。把{4,3,3,2}看成一个新的数组。 第二步:先用{4,3,3,2}中的最大数与b=6比较,即4 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |