题目描述
输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。例如数组:arr[]={1, 2, 3, -2, 4, 3 } 最大子数组为 {4,3} 积为12。
基本思路
方法1:暴力枚举
方法2:动态规划
代码实现
package leetcode.dp;
import java.util.Arrays;
import java.util.Scanner;
/**
* @基本功能:最大连续子数组乘积
* @program:summary
* @author:peicc
* @create:2019-08-29 14:11:14
**/
public class MaxProductSubstring {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
while (sc.hasNext()){
int n=sc.nextInt();
int[] num=new int[n];
for (int i = 0; i <n ; i++) {
num[i]=sc.nextInt();
}
System.out.println(getResult2(num));
}
}
/***
* @