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

Задача . F. Антон и школа


Антон учится в школе. Его любимый предмет — массивоведение. Этот предмет ему легко даётся, он обычно решает задачи по массивоведению очень быстро.

Однажды, когда Антон в очередной раз справился со всеми задачами по массивоведению за десять минут, учительница дала ему задачу посложнее: даны два массива b и c длины n, и надо найти массив a такой, что

где a and b обозначает операцию побитового И, а a or b обозначает операцию побитового ИЛИ.

Хотя Антон обычно решает задачи по массивоведению очень быстро, эта задача оказалась ему не по зубам. Поэтому он решил обратиться к Вам за помощью. Помогите Антону решить эту задачу!

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

В первой строке входных данных находится одно целое число n (1 ≤ n ≤ 200 000) — размер массивов b и c.

Во второй строке входных данных находится n целых чисел bi (0 ≤ bi ≤ 109) — элементы массива b.

В третьей строке входных данных находится n целых чисел ci (0 ≤ ci ≤ 109) — элементы массива c.

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

Если решения не существует, выведите одно число  - 1.

Иначе в единственной строке выходных данных выведите через пробел n целых неотрицательных чисел ai — элементы массива a. Если решений несколько, разрешается вывести любое из них.


Примеры
Входные данныеВыходные данные
1 4
6 8 4 4
16 22 10 10
3 5 1 1
2 5
8 25 14 7 16
19 6 9 4 25
-1

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

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