#CSES2420. 回文查询

回文查询

题目背景

翻译自 CSES-2420 题。

题目描述

给定一个长度为 nn 的字符串,字符串由小写字母 aza–z 构成,字符串的字符位置从 11nn 编号。

你的任务是处理 mm 次操作,操作类型如下:

  1. 将字符串中位置 kk 的字符改为 xx
  2. 检查字符串从位置 aa 到位置 bb 的子串是否是回文。

输入格式

第一行包含两个整数 nnmm:字符串的长度和操作的数量。

第二行是一个长度为 nn 的字符串。

接下来有 mm 行,每行描述一种操作。每行的格式是1 k x2 a b

输出格式

对于每个 2 类型的操作,若子串是回文,输出 YES;否则输出 NO

样例

7 5
aybabtu
2 3 5
1 3 x
2 3 5
1 5 x
2 3 5
YES
NO
YES

说明/提示

1n,m2×1051 \leq n,m \leq 2 \times 10^5

1kn1 \leq k \leq n

1abn1 \leq a \leq b \leq n