我自己写了一段。。我后面思路就乱了 不知道哪个大牛能帮忙改一改。初学背包。
varn,i,j:longint;w:array[0..1000,0..1000] of int64;k:array[0..1000,0..1000]of int64;function max(a,b:longint):longint;beginif a>b then exit(a);if a<b then exit(b);end;beginreadln(n);fillchar(w,sizeof(w),0);for i:=1 to n do begin for j:=1 to i do read(k[i,j]); readln; end;
for i:= 1 to n do for j:=1 to i do
w[i,j]:=max(w[i,j]+k[i+1,j],w[i,j]);
writeln(w[n,n]);
end.
varn,i,j:longint;w:array[0..1000,0..1000] of int64;k:array[0..1000,0..1000]of int64;function max(a,b:longint):longint;beginif a>b then exit(a);if a<b then exit(b);end;beginreadln(n);fillchar(w,sizeof(w),0);for i:=1 to n do begin for j:=1 to i do read(k[i,j]); readln; end;
for i:= 1 to n do for j:=1 to i do
w[i,j]:=max(w[i,j]+k[i+1,j],w[i,j]);
writeln(w[n,n]);
end.