глобальным переменным


глобальным переменным осуществляется в процедуре Init . procedure Include(k:Nint);{включение в решение} begin Rwork:=Rwork+[A[k].man]; Inc(mn); end; procedure Exclude(k:Nint);{исключить из решения} begin Rwork:=Rwork-[A[k].man]; Dec(mn); end; procedure Solve(k:Nint;Res,Rt:Sset); {k- номер элемента массива А; Res - множество партий, которые представлены в текущем решении; Rt - множество партий, которые следует “покрыть” решением; min - минимальное количество членов в парламенте; mn - число членов парламента в текущем решении; Rbest - минимальный парламент; Rwork - текущий парламент; первый вызов - Solve(1,[],[1..N])} var i:Nint; begin блок общих отсечений if Rt=[] then begin if nm<min then begin min:=mn;Rbest:=Rwork end; end else begin i:=k; while i<=N do begin блок отсечений по i Include(i); Solve(i+1,Res+A[i].part,Rt-A[i].part); Exclude(i); Inc(i); end; end;
Индекс
Элементарные функции    Линейные уравнения    Нелинейные уравнения    Случайные числа


Hosted by uCoz