CSES - Substring Reversals | Đảo ngược xâu con

View as PDF

Points: 2200 (p) Time limit: 1.0s Memory limit: 512M Input: stdin Output: stdout

Cho một xâu, nhiệm vụ của bạn là xử lý các thao tác trong đó bạn đảo ngược một xâu con của xâu. Xâu cuối cùng sau tất cả các thao tác là gì?

Input

  • Dòng đầu vào đầu tiên có hai số nguyên \(n\)\(m\): độ dài của xâu và số lượng thao tác. Các ký tự của xâu được đánh số \(1, 2, \ldots, n\).
  • Dòng tiếp theo có một xâu độ dài \(n\) bao gồm các ký tự AZ.
  • Cuối cùng, có \(m\) dòng mô tả các thao tác. Mỗi dòng có hai số nguyên \(a\)\(b\): bạn đảo ngược một xâu con từ vị trí \(a\) đến vị trí \(b\).

Output

  • In xâu cuối cùng sau tất cả các thao tác.

Constraints

  • \(1 \leq n, m \leq 2 \cdot 10 ^ 5\)
  • \(1 \leq a, b \leq n\)

Example

Sample input

7 2
AYBABTU
3 4
4 7

Sample output

AYAUTBB


Comments

There are no comments at the moment.