CF1547D.Co-growing Sequence

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

A sequence of non-negative integers a1,a2,,ana_1, a_2, \dots, a_n is called growing if for all ii from 11 to n1n - 1 all ones (of binary representation) in aia_i are in the places of ones (of binary representation) in ai+1a_{i + 1} (in other words, ai&ai+1=aia_i \:\&\: a_{i + 1} = a_i , where &\& denotes bitwise AND). If n=1n = 1 then the sequence is considered growing as well.

For example, the following four sequences are growing:

  • [2,3,15,175][2, 3, 15, 175] — in binary it's [102,112,11112,101011112][10_2, 11_2, 1111_2, 10101111_2] ;
  • [5][5] — in binary it's [1012][101_2] ;
  • [1,3,7,15][1, 3, 7, 15] — in binary it's [12,112,1112,11112][1_2, 11_2, 111_2, 1111_2] ;
  • [0,0,0][0, 0, 0] — in binary it's [02,02,02][0_2, 0_2, 0_2] .

The following three sequences are non-growing:

  • [3,4,5][3, 4, 5] — in binary it's [112,1002,1012][11_2, 100_2, 101_2] ;
  • [5,4,3][5, 4, 3] — in binary it's [1012,1002,0112][101_2, 100_2, 011_2] ;
  • [1,2,4,8][1, 2, 4, 8] — in binary it's [00012,00102,01002,10002][0001_2, 0010_2, 0100_2, 1000_2] .

Consider two sequences of non-negative integers x1,x2,,xnx_1, x_2, \dots, x_n and y1,y2,,yny_1, y_2, \dots, y_n . Let's call this pair of sequences co-growing if the sequence x1y1,x2y2,,xnynx_1 \oplus y_1, x_2 \oplus y_2, \dots, x_n \oplus y_n is growing where \oplus denotes bitwise XOR.

You are given a sequence of integers x1,x2,,xnx_1, x_2, \dots, x_n . Find the lexicographically minimal sequence y1,y2,,yny_1, y_2, \dots, y_n such that sequences xix_i and yiy_i are co-growing.

The sequence a1,a2,,ana_1, a_2, \dots, a_n is lexicographically smaller than the sequence b1,b2,,bnb_1, b_2, \dots, b_n if there exists 1kn1 \le k \le n such that ai=bia_i = b_i for any 1i<k1 \le i < k but ak<bka_k < b_k .

输入格式

The first line contains an integer tt ( 1t1041 \le t \le 10^4 ). Then tt test cases follow.

The first line of each test case contains an integer nn ( 1n21051 \le n \le 2 \cdot 10^5 ) — length of the sequence xix_i .

The second line contains nn integers x1,x2,,xnx_1, x_2, \dots, x_n ( 0xi<2300 \le x_i < 2^{30} ) — elements of the sequence xix_i .

It is guaranteed that the sum of nn overall all test cases doesn't exceed 21052 \cdot 10^5 .

输出格式

For each test case, print nn integers y1,y2,,yny_1, y_2, \dots, y_n ( 0yi<2300 \le y_i < 2^{30} ) — lexicographically minimal sequence such that such that it's co-growing with given sequence xix_i .

输入输出样例

  • 输入#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
首页