#luoguB4181. [厦门小学生 C++ 2024] 有趣子序列
[厦门小学生 C++ 2024] 有趣子序列
本题没有可用的提交语言。
题目背景
本试题为 2024 年厦门市小学生 C++ 语言复赛试题,数据为洛谷自造。
初赛为笔试。
题目描述
小唐最近在研究一个长为 的 字符串 (下标从 开始)。
他很喜欢其子区间和子序列,例如:如下表的 字符串 。
- 子区间 即为: 这样一个在原 串中连续的一段序列;
- 子序列即类如: 这样一个按原 串顺序的,可连续、可不连续的序列。
所以,子区间肯定是子序列,但子序列不一定是子区间。
小唐会询问你 次,每次询问给出一个 的子区间 ,他想知道是否存在 的一个“有趣子序列”,其满足:
-
“有趣子序列”和询问的子区间 相同;
例:如果询问的子区间是 ,其中,子序列 和询问的子区间 中的字符按顺序一一对应相同; -
“有趣子序列”不是从 中选出的一段子区间。
例:子序列 并不是原 串中连续的一段序列,即不是原 串的一段子区间。
请对于每次询问 ,输出 或 ,分别表示存在或不存在这样的 “有趣子序列”。
输入格式
本题有多组数据。
- 第一行一个非负整数 ,表示数据组数。
- 接下来 组数据,对于每组数据:
- 第一行两个非负整数 和 ,表示字符串长度和询问数。
- 第二行一个 字符串 。
- 接下来 行,每行两个正整数 ,表示询问的子区间。
输出格式
对于每组数据:
- 对于每个询问,输出一行 或 表示答案。
2
6 3
011100
2 4
1 3
3 5
5 2
11111
1 5
2 3
No
Yes
Yes
No
Yes
提示
样例解释 1
- 对于第一组数据,可以选择的子序列下标依次为:不存在,,。
- 对于第二组数据,可以选择的子序列下标依次为:不存在,。
数据范围
对于所有数据,满足 ,,。
数据点编号 | 特殊性质 | |||
---|---|---|---|---|
特殊性质: 表示子区间左边界为 。