Az alábbi letöltési lehetőségek közül választhatsz: (
segítség)
Típus: text/plain
Tartalmaz szöveget
Karakterkódolás: us-ascii
Méret: 1 KB
program fazekas2;
uses
SysUtils;
const
ch = '2';
inputFile = 'FAZEKAS'+ch+'.BE';
outputFile = 'FAZEKAS'+ch+'.KI';
realOutput = 'FAZEKAS'+ch+'.KIX';
maxn = 10000;
var
N,K : integer;
list : Array[1..maxn] of Record e:Byte; End;
cache : Array[1..maxn+1] of Longint;
choice : Array[1..maxn+1] of Longint;
j : Integer;
procedure load;
var
T : Text;
i : integer;
begin
assign(T, inputfile);
reset(T);
readln(T,N,K);
for i:= 1 To N Do readln(T,List[i].e);
Close(T);
for i:=1 To maxn+1 Do cache[i] := 0;
for i := 1 To maxn+1 Do choice[i] := 0;
End;
Procedure best(et:longint);
var min:Longint;
ido:Longint;
max:Longint;
i : Longint;
v : Longint;
begin
min := -1;
max := 0;
v := et+k-1; If v>n Then v:= n;
For i := et To v Do
Begin
if list[i].e > max Then max := list[i].e;
ido := max+cache[i+1];
if (ido < min) or (min=-1) then
begin
min := ido;
choice[et] := i;
end;
End;
cache[et] := min;
end;
begin
load;
cache[N+1]:=0;
For j := N DownTo 1 Do best(j);
writeln(cache[1]);
j := 1;
Writeln(j,' ',choice[j]);
While choice[j] < n do
begin
j := choice[j]+1;
writeln(j,' ',choice[j]);
end;
readln;
end.