题目描述
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
输入
第一行一个整数 n,代表数组元素个数。(n<=1000)
第二行 n 个空格隔开的整数。
输出
输出数组nums内一段连续子序列的最大和
样例输入
9
-2 1 -3 4 -1 2 1 -5 4
样例输出
6
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
int[] n=new int[cin.nextInt()];
int Max=n[0];
for(int i=0;i<n.length;i++){
n[i]=cin.nextInt();
}
for(int i=1;i<n.length;i++){
if(n[i-1]+n[i]>n[i]){
n[i]=n[i-1]+n[i];
Max=Math.max(Max,n[i]);
}
}
System.out.print(Max);
}
}