### 问题描述
给定长度为 n 的仅由小写英文字母构成的字符串 S={s1,s2,…,sn},定义它的子串 S[l,r]={sl,sl+1,…,sr}。
有以下两种操作:
1 ad ch
:将字符串中第 ad 个元素 sad 赋值为字符 ch,给定的 ch 仅可能是小写英文字母。2 l1 r1 l2 r2
:请你判断字符串 S[l1,r1] 是否等于 S[l2,r2]。共进行 q 次操作,对于每个第二种操作,若两个子串相等则输出 YES
,否则输出 NO
。
第一行输入一个正整数 n(1≤n≤2×105)。
第二行输入 n 个小写英文字母,表示字符串 S。
第三行输入一个正整数 q(1≤q≤2×105),表示操作次数。
以下 q 行,第 i 行首先输入一个正整数 opt(opt∈1,2),表示操作种类:
若干行,对于每个操作 2,若两个子串相等则输出 YES
,否则输出 NO
。
5
ababa
5
2 1 3 3 5
1 3 c
2 1 3 3 5
1 1 c
2 1 2 3 4
YES
NO
YES
1≤n,q≤2×105。
opt∈1,2。
1≤ad≤n,1≤l1≤r1≤n,1≤l2≤r2≤n。
字符串 S 仅有小写英文字母构成,字符 ch 仅可能是小写英文字母。