Codeforces Round 812 (Div. 2) |
---|
Закончено |
Давным-давно Spyofgame изобрел известный массив $$$a$$$ (элементы которого нумеруются с $$$1$$$) длины $$$n$$$, который содержал знания о мире и о жизни. После этого он превратил его в матрицу $$$b$$$ (элементы которой нумеруются с $$$0$$$) размера $$$(n + 1) \times (n + 1)$$$, которая содержала знания о мире, о жизни, и о том, что за их пределами.
Spyofgame превратил $$$a$$$ в $$$b$$$ по следующим правилам.
Здесь $$$\oplus$$$ обозначает операцию побитового исключающего ИЛИ.
В наши дни археологи нашли знаменитую матрицу $$$b$$$. Однако многие ее элементы утеряны. Удалось прочесть лишь значения $$$b_{i,n}$$$ для всех $$$1 \leq i \leq n$$$ (обратите внимание, это некоторые элементы последнего столбца, а не строки).
Археологи хотят восстановить возможный массив $$$a$$$. Можете помочь им найти любой массив, который может быть массивом $$$a$$$?
Первая строка содержит одно целое число $$$n$$$ ($$$1 \leq n \leq 5 \cdot 10^5$$$).
Вторая строка содержит $$$n$$$ целых чисел $$$b_{1,n}, b_{2,n}, \ldots, b_{n,n}$$$ ($$$0 \leq b_{i,n} < 2^{30}$$$).
Если какой-то массив $$$a$$$ подходит под данную информацию, выведите строку, содержащую $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$. Если существуют несколько решений, выведите любое из них.
Если решения не существует, выведите одно целое число $$$-1$$$.
3 0 2 1
1 2 3
1 199633
199633
10 346484077 532933626 858787727 369947090 299437981 416813461 865836801 141384800 157794568 691345607
725081944 922153789 481174947 427448285 516570428 509717938 855104873 280317429 281091129 1050390365
Если $$$a = [1,2,3]$$$, то $$$b$$$ будет следующей:
$$$\bf{0}$$$ | $$$\bf{1}$$$ | $$$\bf{2}$$$ | $$$\bf{3}$$$ |
$$$\bf{0}$$$ | $$$1$$$ | $$$3$$$ | $$$0$$$ |
$$$\bf{0}$$$ | $$$1$$$ | $$$2$$$ | $$$2$$$ |
$$$\bf{0}$$$ | $$$1$$$ | $$$3$$$ | $$$1$$$ |
Значения $$$b_{1,n}, b_{2,n}, \ldots, b_{n,n}$$$ равны $$$[0,2,1]$$$, что соответствует найденной археологами информации.
Название |
---|