Cod sursa(job #538645)

Utilizator fzsolt93Fazekas Zsolt fzsolt93 Data 21 februarie 2011 19:43:55
Problema Energii Scor 95
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.78 kb
program numere;
const inf=700000;
var mat:array[0..1010,0..5010] of longint;
v1,v2: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,v1[i],v2[i]);
end;
for i:=1 to w do
mat[0,i]:=inf;
for i:=1 to g2 do
begin
for j:=1 to w do
begin
if (j<v1[i]) then begin
                 if (mat[i-1,j]<v2[i]) then mat[i,j]:=mat[i-1,j]
             else mat[i,j]:=v2[i];
             end
             else if (mat[i-1,j]<mat[i-1,j-v1[i]]+v2[i]) then mat[i,j]:=mat[i-1,j]
             else mat[i,j]:=mat[i-1,j-v1[i]]+v2[i];
                  end;
end;
if (mat[g2,w]=1000) then writeln(g,-1)
else
writeln(g,mat[g2,w]);
close(g);
close(f);
end.