[GRYZ2014]最大连续子序列的和

求给定序列的最大连续子序列和。
输入:第一行:n(n<100000)
            第二行:n个整数[-3000,3000]。
输出:最大连续子序列的和。
样例:
输入:
7
-6 4 -1 3 2 -3 2
输出:
8

var a:array[1..100] of longint;
    f:array[1..100] of longint;
    n,i,j,ans:longint;
function max(x,y:longint):longint;
begin
  if x>y then exit(x) else exit(y);
end;
begin
  readln(n);
  fillchar(f,sizeof(f),0);
  for i:=1 to n do read(a[i]);
  f[1]:=a[1];
  for i:=2 to n do
   begin
      f[i]:=max(f[i-1]+a[i],a[i]);
   end;
  ans:=0;
  for i:=1 to n do
   if f[i]>ans then ans:=f[i];
  writeln(ans);
end.
原文地址:https://www.cnblogs.com/yangqingli/p/4709302.html