Problem

2 /3


Một nhiệm vụ khác về các truy vấn trong một mảng

Problem

Bạn được cung cấp một mảng a có kích thước n và q truy vấn nó. Có hai loại yêu cầu:
  • li ri — thực hiện dịch chuyển theo chu kỳ của đoạn [li, ri] sang phải . Nghĩa là, với mọi x sao cho li ≤ x  < ; riax + 1 trở thành bằng giá trị trước đó ax và ali trở thành bằng giá trị trước đó  ;ari;
  • li ri — lật phân đoạn [li, ri].
 
Cần phải xuất mảng sau khi tất cả các yêu cầu đã được xử lý.
 
Đầu vào
Dòng đầu tiên chứa hai số nguyên n và q (1 ≤ n, q < /em> ≤ 2·105).
Dòng thứ hai chứa n số nguyên a1a2
sub>, ..., an (1 ≤ ai  ≤ 109).
Tiếp theo là q dòng. Phần icủa chúng chứa ba số nguyên tili ri, trong đó ti — nhập itruy vấn thứ [li, ri] — phân đoạn mà truy vấn được thực thi (1 ≤ ti ≤ 2, 1 ≤ l < sub>i ≤ ri ≤ n).
 
Dấu ấn
In m số, ithứ bằng với số tại vị trí bi  ;sau khi tất cả các yêu cầu đã được xử lý.



(c) Kurbatov E., 2018
Nhập Đầu ra
6 3
1 2 3 4 5 6
2 1 3
2 3 6
1 1 6
1 3 2 6 5 4