题意我就不说了,看题面吧。
思想还是很简单的枚举左右然后就变成了最大子序列的和,O(n^3)。
我只想说:注意n m顺序顺。。。。。序
uses math;
var
p,n,m,l,r,len:int64;
i,j,k:longint;
x,ans,y:int64;
f:array[0..500,0..500]of int64;
b:Array[0..500]of int64;
begin
readln(m,n);
for i:=1 to m do
begin
for j:=1 to n do
begin
read(f[i,j]);
end;
end;
ans:=0;
for i:=1 to m do
begin
fillchar(b,sizeof(b),0);
for j:=i to m do
begin
for k:=1 to n do
b[k]:=b[k]+f[j,k];
x:=0; y:=0;
for k:=1 to n do
begin
x:=x+b[k];
if x>=0 then y:=max(x,y)
else x:=0;
end;
ans:=max(ans,y);
end;
end;
writeln(ans);
end.