Pagini recente » Cod sursa (job #1739436) | Cod sursa (job #1835561) | Cod sursa (job #42774) | Cod sursa (job #1387718) | Cod sursa (job #1044688)
type vec=array[1..5010] of integer;
var gen,watt,i,cmin:integer;
w,c,d:vec;
f,g:text;
function test(x,n:integer):byte;
var i:integer;
begin
test:=0;
for i:=1 to n do
if d[i]=x then begin
test:=1;
break;
end;
end;
function ins(pas,poz,ener,cost:integer):integer;
var i:integer;
begin
d[pas]:=poz;
if (ener>=watt) then begin
if (cost<cmin) then cmin:=cost;
end
else
for i:=1 to gen do
if (test(i,pas)=0) and (c[i]+cost<cmin)
then ins(pas+1,i,ener+w[i],cost+c[i]);
end;
function backtrack:integer;
var i:integer;
begin
for i:=1 to gen do ins(1,i,w[i],c[i]);
end;
begin
assign(f,'energii.in' );reset(f);
assign(g,'energii.out');rewrite(g);
readln(f,gen);
readln(f,watt);
for i:=1 to gen do readln(f,w[i],c[i]);
close(f);
cmin:=32000;
backtrack;
write(g,cmin);
close(g);
end.