[LeetCode] Find The Original Array of Prefix Xor

class Solution {
public int[] findArray(int[] pref) {
int n = pref.length;
int[] arr = new int[n];
arr[0] = pref[0];
for(int i = 1; i < n; i++) {
arr[i] = arr[i-1] ^ pref[i];
}
return arr;
}
}
문제에 대한 이해가 잘못 됐다.
주어진 pref 배열의 요소들을 연속 XOR 연산한 결과를 리턴했다.
XOR 연산을 하기 전 pref 배열의 원래 배열을 찾는 문제
pref[i]를 pref[i-1]과 XOR 연산하면 원래 값을 구할 수 있다.
XOR(배타적 논리합, Exclusive OR).
두 비트가 서로 다를 때 1을, 같을 때 0을 반환한다.
class Solution {
public int[] findArray(int[] pref) {
int n = pref.length;
int[] arr = new int[n];
arr[0] = pref[0];
for(int i = 1; i < n; i++) {
arr[i] = pref[i] ^ pref[i-1];
}
return arr;
}
}