uses crt; var p:string; n,i,j:integer; check:boolean; f:text; procedure paliel(var s:string;n:integer); begin s[n]:=char(ord(s[n])+1); if ord(s[n])>56 then begin s[n]:='1'; paliel(s,n+1); end; end; begin p:='427368511'; n:=0; assign(f,'varianti.txt'); rewrite(f); repeat check:=true; for i:=1 to 8 do for j:=1 to 8 do if i<>j then if (abs(ord(p[i])-ord(p[j]))=abs(i-j))or(p[i]=p[j]) then check:=false; if check then begin for i:=1 to 8 do write(p[i]); writeln; inc(n); writeln(f,n div 10,n mod 10,' ',p); end; paliel(p,1); until (p[9]='2'); writeln('Viss! Pavisam ',n,' varianti!'); close(f); readln; end.