Среди многочисленных хобби Джонни, есть два, казалось бы, безвредных: применение побитовых операций и прокрадывание в офис его отца. Как это обычно и бывает у маленьких детей, Джонни не подозревает, что комбинирование этих двух занятий может доставить ему много неприятностей.
На столе его отца хранится множество $$$S$$$, содержащее очень важные числа. В момент, когда Джонни узнал об этом, он решил, что это хорошая идея выбрать положительное целое число $$$k$$$ и заменить все элементы $$$s$$$ из множества $$$S$$$ на $$$s \oplus k$$$ ($$$\oplus$$$ обозначает операцию исключающего или).
Помогите Джонни выбрать такое $$$k$$$, что его отец не заметит никакой разницы после того, как Джонни закончит играть (т.е. Джонни должен получить такое же множество, какое было изначально). Возможно, что ни одного такого числа не существует. Также, возможно, что существует несколько подходящих чисел. В таком случае, выведите минимальное из них. Обратите внимание, что порядок элементов в множестве не имеет значения, т.е. множество $$$\{1, 2, 3\}$$$ равно множеству $$$\{2, 1, 3\}$$$.
Формально, требуется найти минимальное положительное целое число $$$k$$$, такое что $$$\{s \oplus k | s \in S\} = S$$$ или сообщить, что ни одного подходящего числа не существует.
Например, если $$$S = \{1, 3, 4\}$$$ и $$$k = 2$$$, новое множество будет равно $$$\{3, 1, 6\}$$$. Если $$$S = \{0, 1, 2, 3\}$$$ и $$$k = 1$$$, после игры множество останется таким же.
В первой строке дано одно целое число $$$t$$$ ($$$1 \leq t \leq 1024$$$) — количество наборов входных данных. В следующих строках даны $$$t$$$ наборов входных данных, каждый из них занимает две строки.
В первой строке набора входных данных дано одно целое число $$$n$$$ ($$$1 \leq n \leq 1024$$$), обозначающее количество элементов в множестве $$$S$$$. Вторая строка содержит $$$n$$$ различных целых чисел $$$s_i$$$ ($$$0 \leq s_i < 1024$$$) — элементы $$$S$$$.
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превышает $$$1024$$$.
Выведите $$$t$$$ строк, $$$i$$$-я из них должна содержать ответ на $$$i$$$-й набор входных данных — минимальное положительное целое число $$$k$$$, удовлетворяющее условиям, или $$$-1$$$, если ни одного подходящего $$$k$$$ не существует.
6 4 1 0 2 3 6 10 7 14 8 3 12 2 0 2 3 1 2 3 6 1 4 6 10 11 12 2 0 1023
1 4 2 -1 -1 1023
В первом наборе входных данных, ответ $$$1$$$, потому что это минимальное положительное целое число и оно удовлетворяет всем условиям.
Название |
---|