Problem5869--字符串哈希

5869: 字符串哈希

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

给定一个长度为 $n$ 的字符串,再给定 $m$ 个询问,每个询问包含四个整数 $l_1,\ r_1,\ l_2,\ r_2$,请你判断 $[l_1,\ r_1]$ 和 $[l_2,\ r_2]$ 这两个区间所包含的字符串子串是否完全相同。
字符串中只包含大小写英文字母和数字。

Input

第一行包含整数 $n,\ m\ (1 \leq n,\ m \leq 10^5)$,表示字符串长度和询问次数。
第二行包含一个长度为 $n$ 的字符串,字符串中只包含大小写英文字母和数字。
接下来 $m$ 行,每行包含四个整数 $l_1,\ r_1,\ l_2,\ r_2$,表示一次询问所涉及的两个区间。
注意,字符串的位置从 $1$ 开始编号。

Output

对于每个询问输出一个结果,如果两个字符串子串完全相同则输出 Yes,否则输出 No。
每个结果占一行。

Sample 1 Input

8 3
aabbaabb
1 3 5 7
1 3 6 8
1 2 1 2

Sample 1 Output

Yes
No
Yes

Source/Category

数据结构 2.6.哈希表