CF1547D.Co-growing Sequence
普及-
通过率:0%
时间限制:2.00s
内存限制:512MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
A sequence of non-negative integers a1,a2,…,an is called growing if for all i from 1 to n−1 all ones (of binary representation) in ai are in the places of ones (of binary representation) in ai+1 (in other words, ai&ai+1=ai, where & denotes bitwise AND). If n=1 then the sequence is considered growing as well.
For example, the following four sequences are growing:
- [2,3,15,175] — in binary it's [102,112,11112,101011112];
- [5] — in binary it's [1012];
- [1,3,7,15] — in binary it's [12,112,1112,11112];
- [0,0,0] — in binary it's [02,02,02].
The following three sequences are non-growing:
- [3,4,5] — in binary it's [112,1002,1012];
- [5,4,3] — in binary it's [1012,1002,0112];
- [1,2,4,8] — in binary it's [00012,00102,01002,10002].
Consider two sequences of non-negative integers x1,x2,…,xn and y1,y2,…,yn. Let's call this pair of sequences co-growing if the sequence x1⊕y1,x2⊕y2,…,xn⊕yn is growing where ⊕ denotes bitwise XOR.
You are given a sequence of integers x1,x2,…,xn. Find the lexicographically minimal sequence y1,y2,…,yn such that sequences xi and yi are co-growing.
The sequence a1,a2,…,an is lexicographically smaller than the sequence b1,b2,…,bn if there exists 1≤k≤n such that ai=bi for any 1≤i<k but ak<bk.
一个非负整数序列 a1,a2,…,an 称为增长的(growing),如果对所有 i(1≤i≤n−1),ai 的二进制表示中所有为 1 的位,在 ai+1 的二进制表示中对应位也均为 1(换言之,ai&ai+1=ai,其中 & 表示按位与(bitwise AND))。若 n=1,则该序列也被视为增长的。
例如,以下四个序列是增长的:
- [2,3,15,175] — 其二进制表示为 [102,112,11112,101011112];
- [5] — 其二进制表示为 [1012];
- [1,3,7,15] — 其二进制表示为 [12,112,1112,11112];
- [0,0,0] — 其二进制表示为 [02,02,02]。
以下三个序列不是增长的:
- [3,4,5] — 其二进制表示为 [112,1002,1012];
- [5,4,3] — 其二进制表示为 [1012,1002,0112];
- [1,2,4,8] — 其二进制表示为 [00012,00102,01002,10002]。
考虑两个非负整数序列 x1,x2,…,xn 和 y1,y2,…,yn。若序列 x1⊕y1,x2⊕y2,…,xn⊕yn 是增长的(其中 ⊕ 表示按位异或(bitwise XOR)),则称这一对序列为共增长的(co-growing)。
给定一个整数序列 x1,x2,…,xn,请找出字典序最小的序列 y1,y2,…,yn,使得序列 xi 与 yi 是共增长的。
序列 a1,a2,…,an 字典序小于序列 b1,b2,…,bn,当且仅当存在某个 k(1≤k≤n),使得对所有 1≤i<k 均有 ai=bi,但 ak<bk。
输入格式
The first line contains an integer t (1≤t≤104). Then t test cases follow.
The first line of each test case contains an integer n (1≤n≤2⋅105) — length of the sequence xi.
The second line contains n integers x1,x2,…,xn (0≤xi<230) — elements of the sequence xi.
It is guaranteed that the sum of n overall all test cases doesn't exceed 2⋅105.
第一行包含一个整数 t(1≤t≤104)。随后是 t 个测试用例。
每个测试用例的第一行包含一个整数 n(1≤n≤2⋅105)——序列 xi 的长度。
第二行包含 n 个整数 x1,x2,…,xn(0≤xi<230)——序列 xi 的元素。
保证所有测试用例的 n 之和不超过 2⋅105。
输出格式
For each test case, print n integers y1,y2,…,yn (0≤yi<230) — lexicographically minimal sequence such that such that it's co-growing with given sequence xi.
对于每个测试用例,输出 n 个整数 y1,y2,…,yn(其中 0≤yi<230),使得该序列是与给定序列 xi 共增(co-growing)的字典序最小序列。
输入输出样例
输入#1
5 4 1 3 7 15 4 1 2 4 8 5 1 2 3 4 5 4 11 13 15 1 1 0
输出#1
0 0 0 0 0 1 3 7 0 1 0 3 2 0 2 0 14 0
输入解题思路,AI测评打分。不知道怎么写?