赞
踩
这是一类动态规划的题目,假设nums = [2,2,3,3,3,4],我们进行一次映射转换sum[0,0,4,9,4],第一行是sum下标也是nums的值,第二行是sum值,那题目的意思可以转换为sum数组,相连的两个数不能同时取,求sum里面元素怎么相加才能最大。
0 | 1 | 2 | 3 | 4 |
0 | 0 | 2*2 = 4 | 3*3 = 9 | 1*4 = 4 |
那么最后一次相加求和,对于要不要加上sum[4]是不是有两种处理方法,第一种加上了sum[4],第二种是没有加上,那么如何确定是哪一种呢?
第一种加上了:也就是倒数第三次处理sum[2]求和的最大值dp(n-2)加上sum[4]的最后结果要大于等于倒数第二次处理sum[3]求和的最大值dp(n-1)。
第二种没加上:和第一种情况相
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。