#CF1915E. Romantic Glasses

    ID: 6875 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>数据结构贪心数学CodeforcesCodeforces Round 918(Div4)Div4ECF1915E1300

Romantic Glasses

题目描述

Iulia 有 nn 个杯子排成一行,第 ii 个杯子中有 aia_i 单位的果汁。Iulia 只喝编号为奇数的杯子中的果汁,而她的约会对象只喝编号为偶数的杯子中的果汁。

为了给她的约会对象留下好印象,Iulia 想找到一个连续的子区间,使得只考虑这个子区间时,Iulia 和她的约会对象喝到的果汁总量相等。请你帮她找出是否存在这样的子区间。

更正式地说,是否存在两个下标 llrr,满足 1lrn1 \leq l \leq r \leq n,并且如果 llrr 奇偶性相同,则有 $a_l + a_{l+2} + a_{l+4} + \dots + a_r = a_{l+1} + a_{l+3} + \dots + a_{r-1}$;如果 llrr 奇偶性不同,则有 $a_l + a_{l+2} + a_{l+4} + \dots + a_{r-1} = a_{l+1} + a_{l+3} + \dots + a_r$。

输入格式

第一行包含一个整数 tt1t1041 \leq t \leq 10^4),表示测试用例的数量。

每个测试用例的第一行包含一个整数 nn1n2×1051 \leq n \leq 2 \times 10^5),表示杯子的总数。

每个测试用例的第二行包含 nn 个整数 a1,,ana_1, \ldots, a_n1ai1091 \leq a_i \leq 10^9),表示每个杯子中的果汁量。

所有测试用例中 nn 的总和不超过 2×1052 \times 10^5

输出格式

对于每个测试用例,如果存在满足条件的子区间,输出 "YES";否则输出 "NO"。

输出答案时不区分大小写(例如 "yEs"、"yes"、"Yes" 和 "YES" 都会被识别为肯定答案)。

样例

6
3
1 3 2
6
1 1 1 1 1 1
10
1 6 9 8 55 3 14 2 7 2
8
1 2 11 4 1 5 1 2
6
2 6 1 5 7 8
9
2 5 10 4 4 9 6 7 8
YES
YES
NO
YES
NO
YES

样例说明

在第一个测试用例中,Iulia 可以选择 l=1l=1r=3r=3。此时她喝到 a1+a3=1+2=3a_1+a_3=1+2=3 单位果汁,她的约会对象喝到 a2=3a_2=3 单位果汁。

在第二个测试用例中,Iulia 可以选择 l=2l=2r=5r=5。此时她喝到 a3+a5=1+1=2a_3+a_5=1+1=2 单位果汁,她的约会对象喝到 a2+a4=1+1=2a_2+a_4=1+1=2 单位果汁。

在第三个测试用例中,没有任何连续子区间满足条件。

在第四个测试用例中,Iulia 可以选择 l=2l=2r=8r=8。此时她喝到 a3+a5+a7=11+1+1=13a_3+a_5+a_7=11+1+1=13 单位果汁,她的约会对象喝到 a2+a4+a6+a8=2+4+5+2=13a_2+a_4+a_6+a_8=2+4+5+2=13 单位果汁。

由 ChatGPT 4.1 翻译

来源

Codeforces 1915E,英文题名 Romantic Glasses。