Cod sursa(job #148366)

Utilizator remuqueRemus Claudiu Dumitru remuque Data 4 martie 2008 10:54:00
Problema Energii Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.74 kb
const inf = 10000000;
var v:array[0..5001] of longint;
    e,c:array[1..1001] of integer;
    g,w,i,j,u,poz,s:integer;
    f:text;

begin
assign(f,'energii.in');
reset(f);
 readln(f,g);
 readln(f,w);
 for i:=1 to g do
     readln(f,e[i],c[i]);
close(f);

for i:=1 to w do
    v[i]:=inf;
    v[0]:=0;

    u:=0;
    for i:=1 to g do
    begin
        for j:=w downto 0 do

             if (v[j]<>inf) then begin
                poz := j+e[i];
                if (poz>w) then poz:=w;
                if (v[poz]>v[j]+c[i]) then
                  v[poz]:=v[j]+c[i];

              end;
    end;

    assign(f,'energii.out');
    rewrite(f);
    if v[w]=inf then
    write(f,-1)else
    write(f,v[w]);
    close(f);
end.