Cod sursa(job #1370909)

Utilizator Alin_OAlin Oancea Alin_O Data 3 martie 2015 18:00:33
Problema Energii Scor 35
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.8 kb
type sir = array[1..5001] of longint;
var a,a1:sir;
    g,w:longint;
    f:text;

procedure cit(var g,w:longint);
var t,k,i,j,max:longint;
begin
assign(f,'energii.in'); reset(f);
readln(f,g); readln(f,w); max:=maxlongint;
for k:=1 to g do begin
  readln(f,i,j);
  a1:=a;
  for t:=1 to 3000 do
    if (a[t] <> 0) then
      if (a[t+i] = 0) then a1[t+i]:=a[t]+j
      else if (a[t+i] > a[t]+j) then a1[t+i]:=a[t]+j;
  if (a[i] = 0) then a1[i]:=j
  else if (j < a[i]) then a1[i]:=j;
  a:=a1;
end;
close(f);
end;

procedure tip;
var i,k:longint;
begin
assign(f,'energii.out'); rewrite(f); k:=maxlongint;
for i:=w to 5001 do begin
  if ((a[i] < k) and (a[i] <> 0)) then k:=a[i];
end;
if (k <> maxlongint) then write(f,k)
else write(f,-1);
close(f);
end;

begin {pp}
cit(g,w);
tip;
end.