{Виріб складається з N деталей, кожна з яких може вироблятися на довільному з N станків. Час виготовлення j деталі на і станку міститься в таблиці Т[і,j]. Виготовлення виробу починається на всіх станках одночасно. Знайти мінімальний час виготовити виробу, якщо всі деталі починають виготовляти одночасно. Вхідні дані в файлі DETAL.DAT: 3 3 2 7 1 3 2 5 6 2 Вихідні дані в файлі DETAL.REZ: 2 2 1 3} program DETAL1; {$apptype console} var mmin,min,n,i,j,k,y_v,y_g,max,mm,kk:longint; t,a:array[0..100,0..100] of integer; time:array[1..100] of integer; f:text; procedure pr1; begin a[y_v,y_g]:=1; y_g:=y_g+1; y_v:=1; end; procedure pr2; begin for i:=1 to n do a[i,y_g]:=0; y_g:=y_g-1; for i:=1 to n do if a[i,y_g]=1 then y_v:=i; a[y_v,y_g]:=0; y_v:=y_v+1; end; procedure pr3; begin y_g:=y_g-1; for i:=1 to n do if a[i,y_g]=1 then y_v:=i; end; procedure pr4; begin k:=k+1; for i:=1 to n do for j:=1 to n do if a[i,j]=1 then time[i]:=t[i,j]; max:=time[1]; for i:=2 to n do if time[i]>max then max:=time[i]; if min>max then begin min:=max; assign(f,'output.txt'); rewrite(f); // writeln(f,min); mmin:=0; for j:=1 to n do for i:=1 to n do if a[i,j]=1 then mmin:=mmin+a[i,j]*t[i,j]; writeln(f,mmin); close(f); end; end; function pr:boolean; begin pr:=true; for i:=1 to n do if (a[y_v,i]=1) then pr:=false; end; begin assign(f,'input.txt'); reset(f); readln(f,n,mm,kk); for i:=1 to n do for j:=1 to n do read(f,t[i,j]); close(f); k:=0; min:=maxint; for i:=1 to n do for j:=1 to n do a[i,j]:=0; y_v:=1; y_g:=1; pr1; while y_g<>0 do begin while (not(pr)) and (y_v