> For the complete documentation index, see [llms.txt](https://jaywin.gitbook.io/leetcode/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jaywin.gitbook.io/leetcode/solutions/1734-decode-xored-permutation.md).

# 1734. Decode XORed Permutation

<https://leetcode.com/problems/decode-xored-permutation>

## Description

There is an integer array `perm` that is a permutation of the first `n` positive integers, where `n` is always **odd**.

It was encoded into another integer array `encoded` of length `n - 1`, such that `encoded[i] = perm[i] XOR perm[i + 1]`. For example, if `perm = [1,3,2]`, then `encoded = [2,1]`.

Given the `encoded` array, return *the original array* `perm`. It is guaranteed that the answer exists and is unique.

**Example 1:**

```
**Input:** encoded = [3,1]
**Output:** [1,2,3]
**Explanation:** If perm = [1,2,3], then encoded = [1 XOR 2,2 XOR 3] = [3,1]
```

**Example 2:**

```
**Input:** encoded = [6,5,4,6]
**Output:** [2,4,1,5,3]
```

**Constraints:**

* `3 <= n < 105`
* `n` is odd.
* `encoded.length == n - 1`

## ac

```java
```
