该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

口令片段(fragment)

题目描述

DAMON THRONE\text{DAMON THRONE} 的训练系统生成了一个长度为 nn 的口令串 ss

现在有 qq 次询问。每次询问给出四个整数 l1,r1,l2,r2l_1,r_1,l_2,r_2,表示两个子串:

sl1sl1+1sr1s_{l_1}s_{l_1+1}\ldots s_{r_1}

和:

sl2sl2+1sr2s_{l_2}s_{l_2+1}\ldots s_{r_2}

请你判断这两个子串是否完全相同。

如果相同,输出 Yes\texttt{Yes};否则输出 No\texttt{No}

输入格式

第一行包含两个整数 n,qn,q,表示字符串长度和询问次数。

第二行包含一个长度为 nn 的字符串 ss,字符串只包含小写英文字母。

接下来 qq 行,每行包含四个整数 l1,r1,l2,r2l_1,r_1,l_2,r_2,表示一次询问。

输出格式

对于每次询问,输出一行。

如果两个子串完全相同,输出:Yes\texttt{Yes}

否则输出:No\texttt{No}

输入输出样例 #1

输入 #1

7 5
abacaba
1 3 5 7
1 4 4 7
2 4 4 6
1 1 7 7
3 5 1 3

输出 #1

Yes
No
No
Yes
No

样例解释 #1

11 次询问:

s13=abas_{1\sim3}=\texttt{aba} s57=abas_{5\sim7}=\texttt{aba}

两个子串相同,所以输出 Yes\texttt{Yes}

22 次询问:

s14=abacs_{1\sim4}=\texttt{abac} s47=cabas_{4\sim7}=\texttt{caba}

两个子串不同,所以输出 No\texttt{No}

输入输出样例 #2

输入 #2

6 4
aaaaaa
1 3 2 4
1 6 1 5
3 3 6 6
2 5 1 4

输出 #2

Yes
No
Yes
Yes

数据范围与约定

对于所有测试数据,保证:

$$1 \le n,q \le 2\times 10^5,\quad 1 \le l_1 \le r_1 \le n ,\quad 1 \le l_2 \le r_2 \le n $$

字符串 ss 只包含小写英文字母。

测试点 分值 nn qq 特殊性质
121\sim 2 1010 200\le 200
343\sim 4 2020 2000\le 2000 A\text{A}
565\sim 6 105\le 10^5 B\text{B}
787\sim 8 2×105\le 2\times10^5 C\text{C}
9109\sim 10 3030

特殊性质 A\text{A}:保证每次询问的两个子串长度都不超过 2020

特殊性质 B\text{B}:保证字符串中所有字符都相同。

特殊性质 C\text{C}:保证每次询问都有 r1l1=r2l2r_1-l_1=r_2-l_2