import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param energy int整型一维数组
     * @return int整型
     */
   public int maxEnergySum (int[] energy) {
        int tempMax = energy[0];
        int maxSum = energy[0];
        for (int i = 1; i < energy.length; i++) {
            tempMax = Math.max(energy[i],energy[i]+tempMax);
            maxSum = Math.max(tempMax,maxSum);
        }
        return maxSum;
    }
}

本题知识点分析:

1.动态规划

2.API函数(Math.max)

3.数学模拟

本题解题思路分析:

1.利用动态规划

2.先初始化tempMax和maxSum为第一个数,第一个Math.max用于判断是否为正数

3.第二个Math.max用来判断连续的数字和是否为最大,因为可能有负数会中断。

本题使用编程语言: Java