Магистр Максимус создал массив из n
неотрицательных целых чисел, но чтобы сохранить его в тайне, он преобразовал его в другой массив encoded
длиной n-1
. Каждый элемент encodedi
был получен путем выполнения операции XOR
над двумя соседними элементами arr[i]
и arr[i+1]
. Например, если исходный массив arr = [1,0,2,1]
, то полученный массив encoded = [1,2,3]
.
Теперь Магистр Максимус хочет передать эту тайну другому волшебнику, но ему нужно вернуться к исходному массиву arr
. Однако у него есть подсказка - первый элемент arr
равен first
.
Помогите Магистру Максимусу восстановить исходный массив arr
! Мы уверены, что ответ существует и является уникальным. Расшифруйте тайну и восстановите массив arr
.
Входные данные
Программа получает на вход в первой строке число
n
- количество элементов исходного массива. Вторая строка содержит
n-1
число
encodedi
- элементы закодированного массива.
Ограничения
2 <= n <= 104
Длина массива encoded == n - 1
0 <= encodedi <= 105
0 <= first <= 105
Выходные данные
Выведите
n
чисел в однй строку через пробел - элементы исходного массива
arr
.
Примеры
№ |
Входные данные |
Выходные данные |
1 |
4
1 2 3
1
|
1 0 2 1
|
2 |
5
6 2 7 3
4
|
4 2 0 7 4
|