「SWTR-7」How to AK NOI?

题目背景

#### 一些关于字符串的定义与约定详见「帮助 / 提示」部分。 #### 请不要恶意卡评测。 --- 小 A 正在读一篇文章 ——《如何优雅地 AK NOI?》

题目描述

不幸的是,这篇文章是用英语写的。小 A 的视力很糟糕,同时词汇量也很小。 具体地,这篇文章可以用一个字符串 $t$ 表示。同时给出另一个字符串 $s$:小 A 所有认识的单词,都是 $s$ 的**长度不小于 $k$ 的**子串。 一段文字 $T$ 被称为「可读懂的」,当且仅当其能被分割成若干个小 A 读得懂的单词。例如当 $k=2$,$s=\texttt{abcd}$ 时,$\texttt{abcd/abc}$ 和 $\texttt{cd/ab/bc/bcd}$ 就是可读懂的,而 $\texttt{abcc}$ 和 $\texttt{tzcaknoi}$ 就是不可读懂的。 接下来,小 A 会进行 $q$ 次行动: - Type 1:擦亮眼睛。具体地,小 A 会选择文章 $t$ 的一个子串 $t[l:r]$,并将其修改为字符串 $x\ (|x|=r-l+1)$。 - Type 2:阅读文章。具体地,小 A 会选择文章 $t$ 的一个子串 $t[l:r]$ 并进行阅读。**对于每次 Type 2 的操作,你需要告诉小 A 他能不能看懂这段文字**。能够读懂则输出 `Yes`,否则输出 `No`。

输入输出格式

输入格式


第一行一个正整数 $T$,表示该点 Subtask 编号。 第二行一个字符串 $s$。 第三行一个字符串 $t$。 第四行一个正整数 $k$。 第五行一个正整数 $q$。 接下来 $q$ 行,每行表示一个询问。首先给出操作参数 $op$: - 若 $op=1$,则接下来两个正整数 $l,r$ 与一个字符串 $x$,表示将 $t[l:r]$ 修改为 $x$。 - 若 $op=2$,则接下来两个正整数 $l,r$,表示一次询问。

输出格式


对于每个询问输出一行字符串:若可以读懂则输出 `Yes`,否则输出 `No`。

输入输出样例

输入样例 #1

0
bbccabcacbcbac
cbcacbcabbcabca
3
17
2 1 2
2 1 4
2 1 6
2 2 15
2 6 15
2 9 15
1 4 13 babbccabbd
2 1 11
2 1 12
2 1 15
2 5 11
1 13 15 cab
2 3 12
2 7 10
2 11 15
2 10 14
2 9 14

输出样例 #1

No
No
Yes
Yes
Yes
Yes
Yes
No
No
No
No
Yes
No
No
Yes

说明

**「数据范围与约定」** 记 $n=|s|$,$m=|t|$,$L=\sum |x|$。 | Subtask | $n\leq$ | $m\leq$ | $L\leq$ | $q\leq$ | $k\leq$ | 分值 | | :-----: | :------------: | :-----: | :-----: | :-----: | :-----: | :-------: | | 0 | | | | | | 0 point | | 1 | $70$ | $70$ | | $70$ | | 10 points | | 2 | $200$ | $200$ | | $200$ | | 10 points | | 3 | $10^3$ | $10^3$ | | $10^3$ | | 10 points | | 4 | | | | | $1$ | 10 points | | 5 | $2\times 10^5$ | $10^5$ | $0$ | $2\times 10^4$ | $5$ | 15 points | | 6 | $2\times 10^5$ | $10^5$ | $5\times 10^4$ | $2\times 10^4$ | $5$ | 10 points | | 7 | | | | | $6$ | 15 points | | 8 | | | | | | 20 points | 对于 $100\%$ 的数据,$1\leq n\leq 3\times 10^6$,$1\leq L\leq 3\times 10^5$,$1\leq m\leq 2\times 10^5$,$1\leq q\leq 10^5$,$1\leq k\leq 8$。 保证 $|x|=r-l+1$,且字符集为 $[\texttt{a,i}]$。 --- Subtask 0 是样例及 **Hack 数据**。 - Subtask 0 ~ 3 时间限制 1s。 - Subtask 4 ~ 6 时间限制 1.5s。 - Subtask 7 时间限制 3s。 - Subtask 8 时间限制 4.5s。 **「子任务依赖」** **本题使用子任务依赖**。 简单地说,如果 Subtask a 依赖于 Subtask b,那么**只有你通过 Subtask b 的全部测试点时,Subtask a 才会计入总分**。 - Subtask 1 依赖于 Subtask 0。 - Subtask 2 依赖于 Subtask 0,1。 - Subtask 3 依赖于 Subtask 0,1,2。 - Subtask 6 依赖于 Subtask 0,5。 - Subtask 7 依赖于 Subtask 0,5,6。 - Subtask 8 依赖于 Subtask 0~7。 **保证 Subtask 0 的 Hack 数据符合 Subtask 1,2,3,6,7,8 的所有限制**。 **「帮助 / 提示」** 字符串 $t'$ 是 $t$ 的子串,当且仅当我们能够从 $t$ 的开头和结尾删除若干个字符(可以不删除)并得到 $t'$。 定义 $t[l:r]$ 表示 $t_lt_{l+1}\cdots t_{r-1}t_r$ 所形成的字符串。 读入文件较大,请注意 IO 优化。 **「题目来源」** [Sweet Round 07](https://www.luogu.com.cn/contest/51773) E。 idea & solution & data:[Alex_Wei](https://www.luogu.com.cn/user/123294);验题:[tzc_wk](https://www.luogu.com.cn/user/115194)。