#C1045. [CSP-J 2024T4] 接龙
[CSP-J 2024T4] 接龙
题目描述
有 个人,每个人都有一个整数序列词库。游戏进行若干轮,规则如下:
- 每一轮需要选择一个人,且不能与上一轮选择的人相同。
- 被选中的人需要提供其词库中的一个长度在 到 之间的连续子序列(子数组)。
- 第一轮提供的子序列必须以数字 开头。
- 之后的每一轮,提供的子序列必须以上一轮子序列的最后一个元素开头。
现在有 个任务,每个任务给出两个整数 和 ,请你判断是否能够恰好进行 轮,并且最后一轮提供的子序列的最后一个元素恰好为 。如果可以,输出 1;否则输出 0。
输入格式
第一行包含一个正整数 ,表示数据组数。
对于每组数据:
- 第一行包含三个正整数 ,分别表示人数、子序列长度上限和任务个数。
- 接下来 行,每行先是一个正整数 ,表示第 个人的词库长度,然后是 个整数,表示该词库的序列。
- 接下来 行,每行包含两个正整数 ,表示一个任务:是否能够恰好 轮且最后元素为 。
输出格式
对于每个任务,输出一行一个整数:可以则输出 1,否则输出 0。
样例
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
0
1
0
1
0
0
样例解释
共有 组数据, 个人,, 个任务。
- 任务 1:进行 轮,结尾为 。可以选第 个人的子序列 (长度 ,在 内,且以 开头),恰好 轮,结尾为 ,输出
1。 - 任务 2: 轮结尾为 。不存在以 开头且以 结尾的长度在 内的子序列,输出
0。 - 任务 3: 轮结尾为 。可以第一轮选 ,第二轮选另一个人的以 开头、以 结尾的子序列,满足条件,输出
1。 - 任务 4: 轮结尾为 。无法构造满足条件的方案,输出
0。 - 任务 5: 轮结尾为 。可以构造出长度为 的接龙序列,输出
1。 - 任务 6: 轮结尾为 。不允许长度为 的子序列(要求长度至少 ),输出
0。 - 任务 7: 轮结尾为 。不可能,输出
0。
数据范围与提示
- 单组数据中所有 的总和不超过
- 序列中的元素均为正整数,且大小不超过