Даны три неотрицательных целых числа $$$b$$$, $$$c$$$ и $$$d$$$.
Найдите неотрицательное целое число $$$a \in [0, 2^{61}]$$$, такое что $$$(a\, |\, b)-(a\, \&\, c)=d$$$, где $$$|$$$ и $$$\&$$$ обозначают операцию побитового ИЛИ и операцию побитового И соответственно.
Если такое $$$a$$$ существует, выведите его значение. Если решения не существует, выведите одно целое число $$$-1$$$. Если существует несколько решений, выведите любое из них.
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 10^5$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Единственная строка каждого набора входных данных содержит три целых числа $$$b$$$, $$$c$$$ и $$$d$$$ ($$$0 \le b, c, d \le 10^{18}$$$).
Для каждого набора входных данных выведите значение $$$a$$$ или $$$-1$$$, если решения не существует. Обратите внимание, что $$$a$$$ должно быть неотрицательным и не может превышать $$$2^{61}$$$.
32 2 24 2 610 2 14
0 -1 12
В первом наборе входных данных $$$(0\,|\,2)-(0\,\&\,2)=2-0=2$$$. Так что $$$a = 0$$$ является корректным ответом.
Во втором наборе входных данных никакое значение $$$a$$$ не удовлетворяет уравнению.
В третьем наборе входных данных $$$(12\,|\,10)-(12\,\&\,2)=14-0=14$$$. Так что $$$a = 12$$$ является корректным ответом.
Название |
---|