#4936. Palindrome Query

0

Palindrome Query

Palindrome Query

题目描述

你被给定一个长度为 NN 的字符串 SS,由小写英文字母组成。
按给定顺序处理 QQ 个查询。
有两种类型的查询:

1 x c1\ x\ c :将 SS 的第 xx 个字符更改为小写英文字母 cc。 2 L R2\ L\ R :如果由 SS 的第 LL 个到第 RR 个字符组成的子串是回文串,则输出 YesYes;否则,输出 NoNo。

输入格式

输入从标准输入按以下格式给出。这里,queryi\text{query}_i 是要处理的第 ii 个查询。 NN QQ SS query1\text{query}_1 query2\text{query}_2 ⋮\vdots queryQ\text{query}_Q

每个查询按照下列格式之一给出: 11 xx cc

22 LL RR

输出格式

按照题目描述的要求输出查询的答案,每个答案占一行。

7 8
abcbacb
2 1 5
2 4 7
2 2 2
1 5 c
2 1 5
2 4 7
1 4 c
2 3 6
Yes
No
Yes
No
Yes
Yes

提示

1≤N≤1061 \leq N \leq 10^6 1≤Q≤1051 \leq Q \leq 10^5 SS 是一个长度为 NN 的由小写英文字母组成的字符串。 1≤x≤N1 \leq x \leq N cc 是一个小写英文字母。 1≤L≤R≤N1 \leq L \leq R \leq N N,Q,x,L,RN, Q, x, L, R 都是整数。最初,S=S = abcbacbabcbacb.
对于第一个查询,SS 的第 11 到第 55 个字符组成的字符串是 abcbaabcba,这是回文串。因此,输出 YesYes。
对于第二个查询,SS 的第 44 到第 77 个字符组成的字符串是 bacbbacb,这不是回文串。因此,输出 NoNo。
对于第三个查询,SS 的第 22 到第 22 个字符组成的字符串是 bb,这是回文串。因此,输出 YesYes。
对于第四个查询,将 SS 的第 55 个字符改为 cc。SS 变为 abcbccbabcbccb.
对于第五个查询,SS 的第 11 到第 55 个字符组成的字符串是 abcbcabcbc,这不是回文串。因此,输出 NoNo。
对于第六个查询,SS 的第 44 到第 77 个字符组成的字符串是 bccbbccb,这是回文串。因此,输出 YesYes。
对于第七个查询,将 SS 的第 44 个字符改为 cc。SS 变为 abccccbabccccb.
对于第八个查询,SS 的第 33 到第 66 个字符组成的字符串是 cccccccc,这是回文串。因此,输出 YesYes。

标签: AtCoder|abc331F

来源

AtCoder|abc331F