Uses crt; const N=100; Var q: array [1..N] of integer; t: array [1..N] of integer; D: array [1..N] of integer; O: array [1..N] of integer; R: array [1..N] of integer; W: array [1..N] of integer; i,m,qn,Y,j,U,STOP,P: integer; begin {Ввод элементов массива} begin writeln('Введите колличество элемeнтов'); readln(m); STOP:=m; writeln('Введите массив'); i:=0; repeat i:=i+1; write('q[',i,']='); read(q[i]); write('t[',i,']='); read(t[i]); write('D[',i,']='); read(D[i]); W[i]:=i; until i=m; end; {Основной цикл} j:=0; repeat j:=j+1; {Поиск максимального пути} begin i:=0; qn:=0; repeat i:=i+1; if qn=O[i] then begin P:=O[i]; R[j]:=W[i]; U:=i; end; until i=m; m:=m-1; end; {Обновление массива} begin i:=0; repeat i:=i+1; if i>=U then begin W[i]:=W[i+1]; q[i]:=q[i+1]; t[i]:=t[i+1]; D[i]:=D[i+1]; end; until i=m; R[j+1]:=W[1]; end; {Конец основного цикла} until m=1; {Вывод результатов} begin j:=STOP; repeat writeln('R[',STOP+1-j,']=',R[j]); j:=j-1; until j=0; writeln('Для выхода нажмите Enter'); readln; readln; end; end.