출처 : https://leetcode.com/problems/decode-xored-array/
There is a hidden integer array arr that consists of n non-negative integers.
It was encoded into another integer array encoded of length n - 1, such that encoded[i] = arr[i] XOR arr[i + 1]. For example, if arr = [1,0,2,1], then encoded = [1,2,3].
You are given the encoded array. You are also given an integer first, that is the first element of arr, i.e. arr[0].
Return the original array arr. It can be proved that the answer exists and is unique.

class Solution {
public int[] decode(int[] encoded, int first) {
int[] res = new int[encoded.length + 1];
res[0] = first;
int index = 1;
for (int i : encoded) {
res[index] = res[index - 1] ^ i;
//XOR연산은 거꾸로 해도 똑같음
index++;
}
return res;
}
}