Codeforces Round 379 (Div. 2)
F
Anton and School
Codeforces
2500
原题
← E→
翻译中…

Anton goes to school, his favorite lessons are arraystudying. He usually solves all the tasks pretty fast, but this time the teacher gave him a complicated one: given two arrays $*b*$ and $*c*$ of length $*n*$, find array $*a*$, such that:

翻译中…

image

翻译中…

where $*a* *and* *b*$ means bitwise AND, while $*a* *or* *b*$ means bitwise OR.

翻译中…

Usually Anton is good in arraystudying, but this problem is too hard, so Anton asks you to help.

翻译中…

Input

翻译中…

The first line of the input contains a single integers $*n*$ ($1 ≤ *n* ≤ 200 000$) — the size of arrays $*b*$ and $*c*$.

翻译中…

The second line contains $*n*$ integers $*b*_{*i*}$ ($0 ≤ *b*_{*i*} ≤ 10^{9}$) — elements of the array $*b*$.

翻译中…

Third line contains $*n*$ integers $*c*_{*i*}$ ($0 ≤ *c*_{*i*} ≤ 10^{9}$) — elements of the array $*c*$.

翻译中…

Output

翻译中…

If there is no solution, print $- 1$.

翻译中…

Otherwise, the only line of the output should contain $*n*$ non-negative integers $*a*_{*i*}$ — elements of the array $*a*$. If there are multiple possible solutions, you may print any of them.

翻译中…

样例

Input #1
4
6 8 4 4
16 22 10 10
Output #1
3 5 1 1
InputCopy OutputCopy
Input #2
5
8 25 14 7 16
19 6 9 4 25
Output #2
-1
InputCopy OutputCopy
题目信息
题号
734F
时间限制
2 s
内存限制
256 MB
标签
位运算
构造
模拟
数学

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。