内存限制:512 MiB
时间限制:1000 ms
标准输入输出
题目类型:VJudge(洛谷)
评测方式:VJudge
上传者:
匿名
给定一个长 的序列 ,不断进行如下操作:
- ,令 为集合 的 (最小的未出现的非负整数);
- ,令 变为 ;
求有多少种序列 会在该过程中被生成(包含原序列即第 轮操作结束后的序列)。两个长 的序列 不同当且仅当 使得 。
第一行两个整数 分别表示测试点所属的子任务编号(样例保证 )和数据组数。
对于每组数据,输入两行:
样例输入 1
样例输出 1
样例输入 2
0 1
12
1 0 3 2 2 1 4 5 6 8 7 9
样例输出 2
【样例 1 解释】
这是前几轮操作的结果:
3 2 1 1 4
0 0 0 0 0
1 1 1 1 1
0 0 0 0 0
不难发现,之后序列 会不断在全 序列与全 序列之间交替,故共有 种序列 会被生成,答案为 。
【样例 2 解释】
这是前几轮操作的结果:
1 0 3 2 2 1 4 5 6 8 7 9
0 2 2 4 4 4 5 6 7 7 9 10
1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1 1 1 1
【数据范围】
对于所有测试数据,,,。