留下(LiuXia)
PDF 视图题目描述
暮色落下时,远处的山影像一面安静的屏,把归途上的峰线轻轻收住。你把一些数字留在纸上,希望在一次次改变之后,仍能找到某个相邻的位置,留下从一侧走到另一侧的痕迹。就像想要留下住这一刻的时间...直到永远...
"叮咚~屏峰(PingFeng)站--到了,下一站是留下(LiuXia)站..."
给定 \(n\) 个整数 \(a_1, a_2, \dots, a_n\) 和 \(n\) 个整数 \(b_1, b_2, \dots, b_n\)。
有 \(q\) 次询问。每次询问给出一个整数 \(x\),定义
\[ f(i) = (a_i\oplus x)-b_i \]
请判断是否存在一个 \(i\),满足 \(1 \le i < n\) 且
\[ f(i) \cdot f(i+1) \le 0 \]
如果存在,输出 最左侧的 满足条件的 \(i\);否则输出 \(-1\)。
其中 \(\oplus\) 表示二进制按位异或运算。
输入格式
第一行包含一个整数 \(T\),表示数据组数。
对于每组数据:
第一行包含两个整数 \(n, q\)。
第二行包含 \(n\) 个整数 \(a_1, a_2, \dots, a_n\)。
第三行包含 \(n\) 个整数 \(b_1, b_2, \dots, b_n\)。
接下来 \(q\) 行,每行包含一个整数 \(x\)。
输出格式
对于每次询问,输出一行一个整数,表示答案。
若存在多个合法答案,输出最左侧的一个。
数据范围
\(1 \le T \le 20\)。
\(2 \le n \le 3 \cdot 10^5\), \(1 \le q \le 3 \cdot 10^5\)。
\(0 \le a_i, b_i, x \le 10^9\)。
保证所有测试数据中, \(\sum n \le 6 \cdot 10^5\), \(\sum q \le 6 \cdot 10^5\)。
建议使用关流 cin 读入。
样例输入
1
4 4
0 1 2 3
0 2 1 4
0
1
2
3
样例输出
1
1
2
1
评论