Codeforces Round 847 (Div. 3) |
---|
Закончено |
Влад нашёл два положительных целых числа $$$a$$$ и $$$b$$$ ($$$a,b>0$$$). Он обнаружил, что $$$a \oplus b = \frac{a + b}{2}$$$, где $$$\oplus$$$ означает операцию побитового исключающего ИЛИ, а деление происходит без округления.
Так как запомнить одно число проще, чем два, Влад запомнил только $$$a\oplus b$$$, обозначим это число как $$$x$$$. Помогите ему найти любые подходящие $$$a$$$ и $$$b$$$ или скажите, что такие не существуют.
Первая строка входных данных содержит единственное число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных в тесте.
Каждый набор входных данных описывается одним целым числом $$$x$$$ ($$$1 \le x \le 2^{29}$$$) — числом, которое запомнил Влад.
Выведите $$$t$$$ строк, каждая из которых является ответом на соответствующий набор входных данных. В качестве ответа выведите $$$a$$$ и $$$b$$$ ($$$0 < a,b \le 2^{32}$$$), такие что $$$x = a \oplus b = \frac{a + b}{2}$$$. Если вариантов несколько, выведите любой из них. Если подходящих пар не существует, выведите -1.
6251061836
3 1 -1 13 7 -1 25 11 50 22
Название |
---|