cho một mảng số nguyên gồm n phần tử. Tòm dãy con gồm m phần tử (m<=n) sao cho dãy con này có tổng lớn nhất, (Dãy con là dayc các phần tử liên tiếp nhau trong mảng).
cho một mảng số nguyên gồm n phần tử. Tòm dãy con gồm m phần tử (m<=n) sao cho dãy con này có tổng lớn nhất, (Dãy con là dayc các phần tử liên tiếp nhau trong mảng).
program daycon;
uses crt;
var A:array[1..10000] of integer;
n,m,i,j,max,vt:integer;
begin
clrscr;
write(‘Nhap so luong phan tu n: ‘); readln(n);
writeln(‘NHAP GIA TRI TUNG PHAN TU CUA DAY’);
for i:=1 to n do
begin
write(‘Nhap phan tu thu ‘,i,’: ‘);
readln(A[i]);
end;
writeln(‘Day vua nhap la:’);
write(‘Nhap so luong cua day con m: ‘); readln(m);
for i:=1 to n do
write(A[i]:4);
max:=0; vt:=1;
for i:=1 to m do
max:=max+A[i];
for i:=2 to n-m+1 do
begin
t:=0;
for j:=i to i+m-1 do
t:=t+A[j];
if t>max then
begin
max:=t;
vt:=i;
end;
end;
writeln;
writeln(‘Day con co ‘,m,’ phan tu lon nhat la:’);
for i:=vt to vt+m-1 do
write(A[i]:4);
readln
end.
vt:=i;
end;
end;
writeln;
writeln(‘Day con co ‘,m,’ phan tu lon nhat la:’);
for i:=vt to vt+m-1 do
write(A[i]:4);
readln
end.
$NL$:
lag quá@.@
$@Agsi$