no tags 

You are given a cyclic array A having N numbers. In an XOR round, each element of the array A is replaced by the bitwise XOR (Exclusive OR) of itself, the previous element, and the next element in the array. All operations take place simultaneously. Can you calculate A after K such XOR rounds ?


The first line contains the number of test cases T (T <= 50).
There follow 2T lines, 2 per test case. The first line contains two space seperated integers N (3 <= N <= 500) and K (1 <= K <= 1000000000). The next line contains N space seperated integers Ai (0 <= Ai <= 1000000000), which are the initial values of the elements in array A.  


Output T lines, one per test case. For each test case, output a space seperated list of N integers, specifying the contents of array A after K XOR rounds.


Sample Input :
3 1
1 2 3
5 100
1 11 111 1111 11111
Sample Output :
0 0 0
11117 101 1075 12127 12081

Added by:Varun Jalan
Time limit:4s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel Pentium G860 3GHz)
Languages:All except: NODEJS PERL 6 SCM chicken VB.net
Resource:Own Problem, used for Codechef Snackdown http://www.codechef.com/

hide comments
Ankit Sultana: 2015-05-20 21:45:55

A really good problem!!

anurag garg: 2014-01-14 19:04:21

My 200th on spoj.....bits logic

Last edit: 2014-01-15 17:22:59