接龙(chain)
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
[CSP-J 2024] 接龙
题目描述
在玩惯了成语接龙之后,小 J 和他的朋友们发明了一个新的接龙规则。
总共有 个人参与这个接龙游戏,第 个人会获得一个整数序列 作为他的词库。
一次游戏分为若干轮,每一轮规则如下:
- 个人中的某个人 带着他的词库 进行接龙。若这不是游戏的第一轮,那么这一轮进行接龙的人不能与上一轮相同,但可以与上上轮或更往前的轮相同。
- 接龙的人选择一个长度在 的 的连续子序列 作为这一轮的接龙序列,其中 是给定的常数。若这是游戏的第一轮,那么 需要以元素 开头,否则 需要以上一轮的接龙序列的最后一个元素开头。
- 序列 是序列 的连续子序列当且仅当可以通过删除 的开头和结尾的若干元素(可以不删除)得到 。
为了强调合作,小 J 给了 个参与游戏的人 个任务,第 个任务需要这 个人进行一次游戏,在这次游戏里进行恰好 轮接龙,且最后一轮的接龙序列的最后一个元素恰好为 。请判断这 个任务是否可以完成。
输入格式
本题有多组测试数据。
输入的第一行包含一个正整数 ,表示数据组数。
接下来包含 组数据,每组数据的格式如下:
- 第一行包含三个整数 ,分别表示参与游戏的人数、接龙序列长度上限以及任务个数。
- 接下来 行:第 行包含 个整数 ,其中第一个整数 表示序列 的长度,接下来 个整数描述序列 。
- 接下来 行:第 行包含两个整数 ,描述一个任务。
输出格式
对于每个任务:输出一行包含一个整数,若任务可以完成输出 1,否则输出 0。
样例 #1
样例输入 #1
1
3 3 7
5 1 2 3 4 1
3 1 2 5
3 5 1 6
1 2
1 4
2 4
3 4
6 6
1 1
7 7
样例输出 #1
1
0
1
0
1
0
0
样例 #2
样例输入 #2
见选手目录下的 chain/chain2.in 与 chain/chain2.ans。
样例输出 #2
见选手目录下的 chain/chain2.in 与 chain/chain2.ans。
样例 #3
样例输入 #3
见选手目录下的 chain/chain3.in 与 chain/chain3.ans。
样例输出 #3
见选手目录下的 chain/chain3.in 与 chain/chain3.ans。
提示
【样例 1 解释】
在下文中,使用 表示一轮游戏中所有的接龙序列, 表示对应的接龙的人的编号。
- 第一组询问:、,合法。
- 第二组询问:不可完成。注意 、 不合法,因为 。
- 第三组询问:、,合法。
- 第四组询问:不可完成。注意 、 不合法,因为第二轮和第三轮由同一个人接龙。
- 第五组询问:、,合法。
- 第六组询问:不可完成。每个接龙序列的长度必须大于等于 2,因此 不合法。
- 第七组询问:所有人的词库均不存在字符 7,不可完成。
【数据范围】
对于所有测试数据,保证: