H
hai6f2009
Chắc suất Đại học top - Giữ chỗ ngay!! ĐĂNG BÀI NGAY để cùng trao đổi với các thành viên siêu nhiệt tình & dễ thương trên diễn đàn.
program sumarray;
const fi='maxval.inp';
fo='maxval.out';
max=100000;
var f:text;
a:array[1..max] of int64;
l,l1,r,r1:array[1..max] of int64;
s:int64;
n:longint;
procedure enter;
var i:longint;
begin
assign(f,fi);reset(f);
readln(f,n);
for i:=1 to n do read(f,a);
close(f);
end;
function maxnumber(x,y:integer):integer;
begin
if x>y then exit(x) else exit(y);
end;
procedure process;
var i:integer;
begin
s:=-maxlongint;
l[1]:=a[1];
l1[1]:=l[1];
r[n]:=a[n];
r1[n]:=a[n];
for i:=2 to n do
begin
l:=maxnumber(l[i-1]+a,a);
l:=maxnumber(l,l1[i-1]);
end;
for i:=n-1 downto 1 do
begin
r:=maxnumber(r[i+1]+a,a);
r1:=maxnumber(r,r[i+1]);
end;
end;
procedure printresult;
var i:integer;
begin
for i:=1 to n-1 do s:=maxnumber(s,l+r[i+1]);
assign(f,fo);rewrite(f);
writeln(f,s);
close(f);
end;
BEGIN
enter;
process;
printresult;
END.
Chỗ in đậm ở trên là nơi bị lỗi exit code=201
Mong các bạn cho mình biết vì sao nó lại bị lỗi và sửa như thế nào? thanks
const fi='maxval.inp';
fo='maxval.out';
max=100000;
var f:text;
a:array[1..max] of int64;
l,l1,r,r1:array[1..max] of int64;
s:int64;
n:longint;
procedure enter;
var i:longint;
begin
assign(f,fi);reset(f);
readln(f,n);
for i:=1 to n do read(f,a);
close(f);
end;
function maxnumber(x,y:integer):integer;
begin
if x>y then exit(x) else exit(y);
end;
procedure process;
var i:integer;
begin
s:=-maxlongint;
l[1]:=a[1];
l1[1]:=l[1];
r[n]:=a[n];
r1[n]:=a[n];
for i:=2 to n do
begin
l:=maxnumber(l[i-1]+a,a);
l:=maxnumber(l,l1[i-1]);
end;
for i:=n-1 downto 1 do
begin
r:=maxnumber(r[i+1]+a,a);
r1:=maxnumber(r,r[i+1]);
end;
end;
procedure printresult;
var i:integer;
begin
for i:=1 to n-1 do s:=maxnumber(s,l+r[i+1]);
assign(f,fo);rewrite(f);
writeln(f,s);
close(f);
end;
BEGIN
enter;
process;
printresult;
END.
Chỗ in đậm ở trên là nơi bị lỗi exit code=201
Mong các bạn cho mình biết vì sao nó lại bị lỗi và sửa như thế nào? thanks