Реферат: Механизм бектрекинга
clrscr;
read (n);
for i: =1 to n do
begin
writeln ('Элемент номер - ', i);
write ('Введите его вес - '); read (a [i]. ves);
write ('Введите его цену - '); read (a [i]. cost);
b [i]: =i;
end;
write ('Сколько денег в наличии - '); read (money);
clrscr;
level: =1; max: =0;
while b [1] <n do
begin
{Поиск элемента не использованного на этом уровне}
b [level]: =add_element (b [level]);
if b [level] >0
then
begin
s [level]: =b [level] ;
level: =level+1;
sum_ves: =0; sum_cost: =0;
for i: =1 to n do
if s [i] <>0 then
begin
sum_ves: =sum_ves+a [s [i]]. ves;
sum_cost: =sum_cost+a [s [i]]. cost;
end;
if (max<sum_ves) and (sum_cost<=money) then max: =sum_ves;