var n, l1, l2, r1, r2, i: integer; a, b: array[1..nn] of integer; F: Text;
begin Assign(F, 'input.txt'); Reset(F); Readln(F, n); for i := 1 to n do Read(F, a[i]); Readln(F, l1, r1); Readln(F, l2, r2); Close(F); for i := 1 to l1 - 1 do b[i] := a[i]; for i := l1 to r1 do b[i] := a[l1 + r1 - i]; if l2 <= r1 then begin for i := l1 to r1 do a[i] := b[i]; for i := l2 to r2 do b[i] := a[l2 + r2 - i] end else begin for i := r1 + 1 to l2 - 1 do b[i] := a[i]; for i := l2 to r2 do b[i] := a[l2 + r2 - i]; end; for i := r2 + 1 to n do b[i] := a[i]; for i := 1 to n do Write(b[i],' '); end.
Основные параметры: частота и кол-во ядер процессора, объём и частота оперативной памяти, частота системной шины материнской платы, объём видеопамяти, производительность графического процессора, вид внутренней памяти (SDD\HDD), объём внутренней памяти, установленные операционные системы, размер и разрешение экрана монитора.. Эм... Попросить "знакомого компьютерщика" воткнуть кабели, куда следует, включить блок питания, включить компьютер, нажать F1 для получения справки (или продолжить докучать "знакомому компьютерщику").
nn = 100;
var
n, l1, l2, r1, r2, i: integer;
a, b: array[1..nn] of integer;
F: Text;
begin
Assign(F, 'input.txt');
Reset(F);
Readln(F, n);
for i := 1 to n do Read(F, a[i]);
Readln(F, l1, r1);
Readln(F, l2, r2);
Close(F);
for i := 1 to l1 - 1 do b[i] := a[i];
for i := l1 to r1 do b[i] := a[l1 + r1 - i];
if l2 <= r1 then
begin
for i := l1 to r1 do a[i] := b[i];
for i := l2 to r2 do b[i] := a[l2 + r2 - i]
end
else
begin
for i := r1 + 1 to l2 - 1 do b[i] := a[i];
for i := l2 to r2 do b[i] := a[l2 + r2 - i];
end;
for i := r2 + 1 to n do b[i] := a[i];
for i := 1 to n do Write(b[i],' ');
end.
Результат решения:
5 8 3 6 0 14 -6 -2 4 1
Эм... Попросить "знакомого компьютерщика" воткнуть кабели, куда следует, включить блок питания, включить компьютер, нажать F1 для получения справки (или продолжить докучать "знакомому компьютерщику").