Pagini recente » Cod sursa (job #2632558) | Cod sursa (job #1493515) | Cod sursa (job #3031716) | Cod sursa (job #998890) | Cod sursa (job #148348)
Cod sursa(job #148348)
//energii
var g,w,i,j,max,cost:integer;
ener,inf:longword;
a:array[0..5000] of longword;
gen:array[1..1000] of record eng,cst:integer; end;
procedure citire;
var f:text;
i,j,x,y:integer;
begin
assign(f,'energii.in');
reset(f);
readln(f,g);
readln(f,w);
for i:=1 to g do begin
readln(f,x,y);
gen[i].eng:=x;
gen[i].cst:=y;
end;
close(f);
end;
procedure scriere;
var f:text;
begin
assign(f,'energii.out'); rewrite(f);
writeln(f,a[w]);
close(f);
end;
begin
citire;
fillchar(a,4*w+4,255);
inf:=a[0];
a[0]:=0;
max:=0;
for i:=1 to g do begin
for j:=max downto 0 do begin
if a[j]<>inf then begin
cost:=a[j]+gen[i].cst;
ener:=( j +gen[i].eng);
if ener>w then ener:=w;
if ener>max then max:=ener;
if a[ener]>cost then
a[ener]:=cost;
end;
end;
end;
scriere;
end.