atcoder#ABC172F. [ABC172F] Unfair Nim

[ABC172F] Unfair Nim

Score : 600600 points

Problem Statement

There are NN piles of stones. The ii-th pile has AiA_i stones.

Aoki and Takahashi are about to use them to play the following game:

  • Starting with Aoki, the two players alternately do the following operation:- Operation: Choose one pile of stones, and remove one or more stones from it.
  • When a player is unable to do the operation, he loses, and the other player wins.

When the two players play optimally, there are two possibilities in this game: the player who moves first always wins, or the player who moves second always wins, only depending on the initial number of stones in each pile.

In such a situation, Takahashi, the second player to act, is trying to guarantee his win by moving at least zero and at most (A11)(A_1 - 1) stones from the 11-st pile to the 22-nd pile before the game begins.

If this is possible, print the minimum number of stones to move to guarantee his victory; otherwise, print -1 instead.

Constraints

  • 2N3002 \leq N \leq 300
  • 1Ai10121 \leq A_i \leq 10^{12}

Input

Input is given from Standard Input in the following format:

NN

A1A_1 \ldots ANA_N

Output

Print the minimum number of stones to move to guarantee Takahashi's win; otherwise, print -1 instead.

2
5 3
1

Without moving stones, if Aoki first removes 22 stones from the 11-st pile, Takahashi cannot win in any way.

If Takahashi moves 11 stone from the 11-st pile to the 22-nd before the game begins so that both piles have 44 stones, Takahashi can always win by properly choosing his actions.

2
3 5
-1

It is not allowed to move stones from the 22-nd pile to the 11-st.

3
1 1 2
-1

It is not allowed to move all stones from the 11-st pile.

8
10 9 8 7 6 5 4 3
3
3
4294967297 8589934593 12884901890
1

Watch out for overflows.