#CF1863F. 分割、异或与征服
分割、异或与征服
分割、异或与征服
- 时间限制:2 秒
- 内存限制:256 MiB
题目描述
给定一个长度为 的整数数组 。
当前保留的数组始终是原数组的一个连续区间 。当 时,可以任选 (),把区间分为 与 。令两部分的元素异或和分别为 和 :
- 若 ,丢弃左边部分;
- 若 ,丢弃右边部分;
- 若 ,可以任选一边丢弃。
不断操作直到区间只剩一个元素。请对每个位置 判断,是否存在一种操作方案使最后只剩下原数组的第 个元素。
输入格式
第一行一个整数 ,表示测试用例数量。
每个测试用例第一行一个整数 ;第二行包含 个整数 。
输出格式
对每个测试用例输出一个长度为 的二进制字符串。第 个字符为 1 表示第 个元素可能成为最后剩下的元素,否则为 0。
样例输入 1
6
6
3 2 1 3 7 4
5
1 1 1 1 1
10
1 2 4 8 4 1 2 3 4 5
5
0 0 0 0 0
5
1 2 3 0 1
1
100500
样例输出 1
111111
10101
0001000000
11111
11001
1
数据范围
,,,且所有测试用例的 之和不超过 。
| 子任务编号 | 分值 | 特殊限制 |
|---|---|---|
| 1 | 20 | 每个 ,且 |
| 2 | 40 | 每个 ,且 |
| 3 | 无特殊限制 |