Var n,a,b,c,d,i:integer;
begin
write('n = '); readln(n);
write('A и B: '); readln(a,b);
write('C и D: '); readln(c,d);
for i:=1 to a-1 do write(i,' ');
for i:=b downto a do write(i,' ');
for i:=b+1 to c-1 do write(i,' ');
for i:=d downto c do write(i,' ');
for i:=d+1 to n do write(i,' ');
end.
Пример:
n = 20
A и B: 5 10
C и D: 14 18
1 2 3 4 10 9 8 7 6 5 11 12 13 18 17 16 15 14 19 20
N=2^j
8=2^3
j=3 бит
k=4
I=k*j
I=12 бит=1,5 байт
Var x:integer;
begin
for x:=5 to 14 do begin
x:=x*(x+1)
end;
end.
PASCAL не уверен что работает но смысл такой