Олимпиадный тренинг

Задача . A. Расстояние


Давайте обозначим манхэттенское расстояние между двумя точками \(p_1\) (с координатами \((x_1, y_1)\)) и \(p_2\) (с координатами \((x_2, y_2)\)) как \(d(p_1, p_2) = |x_1 - x_2| + |y_1 - y_2|\). Например, расстояние между двумя точками с координатами \((1, 3)\) и \((4, 2)\) равно \(|1 - 4| + |3 - 2| = 4\).

Вам заданы две точки \(A\) и \(B\). Точка \(A\) имеет координаты \((0, 0)\), точка \(B\) имеет координаты \((x, y)\).

Ваша цель — найти точку \(C\) такую, что:

  • обе координаты \(C\) являются неотрицательными целыми числами;
  • \(d(A, C) = \dfrac{d(A, B)}{2}\) (без округления);
  • \(d(B, C) = \dfrac{d(A, B)}{2}\) (без округления).

Найдите любую точку \(C\), которая удовлетворяет этим условиям, или сообщите, что такой точки не существует.

Входные данные

Первая строка содержит одно целое число \(t\) (\(1 \le t \le 3000\)) — количество наборов входных данных.

Каждый набор состоит из одной строки, содержащей два целых числа \(x\) и \(y\) (\(0 \le x, y \le 50\)) — координаты точки \(B\).

Выходные данные

Для каждого набора входных данных выведите ответ в отдельной строке следующим образом:

  • если невозможно найти точку \(C\), удовлетворяющую всем условиям, выведите «-1 -1» (без кавычек);
  • в противном случае выведите два неотрицательных целых числа, не превышающих \(10^6\) — координаты точки \(C\), удовлетворяющей всем условиям. Если существует несколько ответов, выведите любой из них. Можно показать, что если такая точка существует, то можно найти точку с координатами, не превышающими \(10^6\), которая удовлетворяет условиям.
Примечание

Пояснения к некоторым примерам:

  • В первом примере точка \(B\) имеет координаты \((49, 3)\). Если точка \(C\) имеет координаты \((23, 3)\), то расстояние от \(A\) до \(B\) равно \(|49 - 0| + |3 - 0| = 52\), расстояние от \(A\) до \(C\) равно \(|23 - 0| + |3 - 0| = 26\), и расстояние от \(B\) до \(C\) равно \(|23 - 49| + |3 - 3| = 26\).
  • Во втором примере точка \(B\) имеет координаты \((2, 50)\). Если точка \(C\) имеет координаты \((1, 25)\), то расстояние от \(A\) до \(B\) равно \(|2 - 0| + |50 - 0| = 52\), расстояние от \(A\) до \(C\) равно \(|1 - 0| + |25 - 0| = 26\), и расстояние от \(B\) до \(C\) равно \(|1 - 2| + |25 - 50| = 26\).
  • В третьем и четвертом примерах можно показать, что ни одна точка с целочисленными координатами не соответствует условиям.
  • В пятом примере точка \(B\) имеет координаты \((42, 0)\). Если точка \(C\) имеет координаты \((21, 0)\), то расстояние от \(A\) до \(B\) равно \(|42 - 0| + |0 - 0| = 42\), расстояние от \(A\) до \(C\) равно \(|21 - 0| + |0 - 0| = 21\), и расстояние от \(B\) до \(C\) равно \(|21 - 42| + |0 - 0| = 21\).

Примеры
Входные данныеВыходные данные
1 10
49 3
2 50
13 0
0 41
42 0
0 36
13 37
42 16
42 13
0 0
23 3
1 25
-1 -1
-1 -1
21 0
0 18
13 12
25 4
-1 -1
0 0

time 3000 ms
memory 512 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя