编程题
### 问题描述 给定一个长度为 $N$ 的 $01$ 数列 $A_1, A_2, \cdots, A_N$ 和一个长度为 $N$ 的 $01$ 数列 $B_1, B_2, \cdots, B_N$。 对于一个整数对 $x, y$($x \leq y$),定义公式 $F(x, y)$、$G(x,y)$、$H(x,y)$ 分别为: $$ F(x, y) = A_x + A_{x + 1} + \cdots + A_y \\\\ G(x, y) = A_x \lor A_{x + 1} \lor \cdots \lor A_y \\\\ H(x, y) = B_x \oplus B_{x + 1} \oplus \cdots B_{y} $$ 其中,$\lor$ 和 $\oplus$ 分别表示逻辑或、异或运算。 现在,对于所有满足以下两条件的整数对 $l,r$,请你求出 $r-l+1$ 最大值: 1. $1 \leq l \leq r \leq N$ 2. $F(l,r) - G(l,r) = H(l,r)$ ### 输入格式 第一行包含一个整数 $N$($1\leq N \leq 10^5$),表示数列的长度。 第二行包含 $N$ 个 $0$ 或 $1$ 的整数,表示数列 $A$。 第三行包含 $N$ 个 $0$ 或 $1$ 的整数,表示数列 $B$。 ### 输出格式 输出一个整数,表示满足条件的 $r-l+1$ 的最大值。若不存在这样的 $l, r$,则输出 $0$。 ### 样例输入 ```text 2 1 0 0 0 ``` ### 样例输出 ```text 2 ``` ### 样例说明 当 $l = 1, r = 2$ 时: - $F(1, 2) = 1, G(1,2) = 1, H(1,2) = 0$,$F - G = H$。 此时,$r - l + 1 = 2$,为最优解。
查看答案
赣ICP备20007335号-2