Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var a,u,b: array[1..100] of byte;
- n,max,i: byte;
- function gcd(a,b: byte): byte;
- begin
- if b=0 then gcd:=a
- else gcd:=gcd(b, a mod b)
- end;
- function R(k, pred: byte): byte;
- var i: byte;
- begin
- if k>max
- then begin
- max:=k;
- for i:=2 to max do b[i]:=a[i];
- end;
- for i:=2 to n do
- if (u[i]=0) and ((pred=0) or (gcd(pred, i)>1))
- then begin
- u[i]:=1; a[k+1]:=i;
- R(k+1, i);
- u[i]:=0;
- end;
- end;
- begin
- read(n); max:=1;
- R(1,0);
- write(1);
- for i:=2 to max do write('-', b[i]);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement