Cod sursa(job #538287)

Utilizator alexa_myparadiseAlexutzaaa alexa_myparadise Data 21 februarie 2011 00:30:06
Problema Energii Scor 95
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.76 kb
program numere;
const inf=700000;
var sol:array[0..1010,0..5010] of longint;
    eg,cg:array[1..1010] of longint;
    w,g2,i,j:integer;
    f,g:text;

begin
assign(f,'energii.in');
reset(f);
assign(g,'energii.out');
rewrite(g);
readln(f,g2);
readln(f,w);
for i:=1 to g2 do
begin
 readln(f,eg[i],cg[i]);
end;
for i:=1 to w do
 sol[0,i]:=inf;
for i:=1 to g2 do
begin
 for j:=1 to w do
 begin
  if (j<eg[i]) then
  begin
   if (sol[i-1,j]<cg[i]) then sol[i,j]:=sol[i-1,j]
   else
    sol[i,j]:=cg[i];
  end
  else
   if (sol[i-1,j]<sol[i-1,j-eg[i]]+cg[i]) then
   sol[i,j]:=sol[i-1,j]
   else
    sol[i,j]:=sol[i-1,j-eg[i]]+cg[i];
  end;
end;
 if (sol[g2,w]=1000) then writeln(g,-1)
 else
  writeln(g,sol[g2,w]);
close(g);
close(f);
end.