|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Vitaly Slobodskoy 2:5015/128.22 27 Aug 2002 00:45:48 To : Denis Zevakhin Subject : Re: Pilots -------------------------------------------------------------------------------- Здравствуйте, //Denis Zevakhin//, САHТЕХHИКА вызывали?!? Так так, у вас потекло 26.08.02... *ТЫ хочешь поговорить об этом??* DZ> Стал я тут играться в Братьев Пилотов, ну и встрял на 7 уровне... Уже было... Макс Алексеев приводил ПОЛHОЕ математическое обоснование решения... Всё элементарно, никакой рекурсии: var pol: array [1..4,1..4] of integer; i,j,k: integer; function oddp(x,y: integer): boolean; var i,s: integer; begin s := 0; for i:=1 to 4 do inc(s,pol[i,y]); for i:=1 to 4 do if i<>y then inc(s,pol[x,i]); oddp := odd(s); end; procedure povorot(x,y:integer); var i: integer; begin for i:=1 to 4 do if pol[i,y]=0 then pol[i,y]:=1 else pol[i,y]:=0; for i:=1 to 4 do if i<>y then begin if pol[x,i]=0 then pol[x,i]:=1 else pol[x,i]:=0; end; end; procedure print; var i,j: integer; begin for i:=1 to 4 do begin for j:=1 to 4 do write(pol[i,j],' '); writeln; end; end; begin writeln('Enter state, please:'); for i := 1 to 4 do for j:=1 to 4 do read(pol[i,j]); readln; writeln; k := 0; for i:=1 to 4 do begin for j:=1 to 4 do begin if oddp(i,j) then begin inc(k); writeln(k,')',' Change: ',i,',',j); povorot(i,j); print; readln; writeln; end; end; end; end. ----------------- Hадеюсь, хоть чем-то мог быть полезен! И, это... в следующий раз закрывайте кран! Slobodskoy Vitaly e-mail: vital@mail.nnov.ru fido: 2:5015/128.22 --- WP/95 Rel 1.78E (215.0) Reg. * Origin: И создал бог мужику женщину..Существо получилось ГЛУПОЕ, но забавное : (2:5015/128.22) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3908ba8d7895.html, оценка из 5, голосов 10
|