CF2241D An Alternative Way

题目描述

给你两个长度为 $n$ 的数组 $a$ 和 $b$。你可以对数组 $a$ 进行如下任意次数(包括零次)的操作: 1. 选择两个下标 $l$ 和 $r$,满足 $1 \le l \le r \le n$。 2. 对于每个下标 $i$,其中 $l \le i \le r$: - 如果 $i-l$ 是奇数,则将 $a_i$ 设为 $a_i - 1$; - 如果 $i-l$ 是偶数,则将 $a_i$ 设为 $a_i + 1$。 请你判断能否经过若干次操作后,使得数组 $a$ 恰好等于数组 $b$。

输入格式

第一行输入一个整数 $t$($1 \le t \le 10^4$),表示测试用例的个数。每个测试用例包含如下内容。 每个测试用例的第一行包含一个整数 $n$($1 \le n \le 2 \cdot 10^5$),表示数组 $a$ 和 $b$ 的长度。 第二行为 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \le a_i \le 10^9$),表示数组 $a$ 的元素。 第三行为 $n$ 个整数 $b_1, b_2, \ldots, b_n$($1 \le b_i \le 10^9$),表示数组 $b$ 的元素。 保证所有测试用例中 $n$ 的总和不超过 $2\cdot10^5$。

输出格式

对于每个测试用例,如果可以通过若干次操作使数组 $a$ 变成数组 $b$,输出 "YES";否则输出 "NO"。 输出的 "YES" 和 "NO" 不区分大小写(例如 "yEs"、"yes" 和 "Yes" 均被视为肯定回答)。

说明/提示

对于第一个测试用例,数组 $a$ 和 $b$ 已经相等。 对于第二个测试用例,可以选择 $l = 2$,$r = 4$。此时我们对 $a$ 数组做如下更新: - $i = 2$ 时,$i-l = 2-2 = 0$,为偶数,因此 $a_2 := a_2 + 1 = 4 + 1 = 5$。 - $i = 3$ 时,$i-l = 3-2 = 1$,为奇数,因此 $a_3 := a_3 - 1 = 5 - 1 = 4$。 - $i = 4$ 时,$i-l = 4-2 = 2$,为偶数,因此 $a_4 := a_4 + 1 = 2 + 1 = 3$。 最终我们得到 $a = [1, 5, 4, 3]$ 和 $b = [1, 5, 4, 3]$。 对于第三个测试用例,可以证明无法通过若干次操作使 $a$ 变为 $b$。 由 ChatGPT 5 翻译