CF1698C.3SUM Closure

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given an array aa of length nn . The array is called 3SUM-closed if for all distinct indices ii , jj , kk , the sum ai+aj+aka_i + a_j + a_k is an element of the array. More formally, aa is 3SUM-closed if for all integers 1i<j<kn1 \leq i < j < k \leq n , there exists some integer 1ln1 \leq l \leq n such that ai+aj+ak=ala_i + a_j + a_k = a_l .

Determine if aa is 3SUM-closed.

输入格式

The first line contains an integer tt ( 1t10001 \leq t \leq 1000 ) — the number of test cases.

The first line of each test case contains an integer nn ( 3n21053 \leq n \leq 2 \cdot 10^5 ) — the length of the array.

The second line of each test case contains nn integers a1,a2,,ana_1, a_2, \dots, a_n ( 109ai109-10^9 \leq a_i \leq 10^9 ) — the elements of the array.

It is guaranteed that the sum of nn across all test cases does not exceed 21052 \cdot 10^5 .

输出格式

For each test case, output "YES" (without quotes) if aa is 3SUM-closed and "NO" (without quotes) otherwise.

You can output "YES" and "NO" in any case (for example, strings "yEs", "yes" and "Yes" will be recognized as a positive response).

输入输出样例

  • 输入#1

    4
    3
    -1 0 1
    5
    1 -2 -2 1 -3
    6
    0 0 0 0 0 0
    4
    -1 2 -3 4

    输出#1

    YES
    NO
    YES
    NO

说明/提示

In the first test case, there is only one triple where i=1i=1 , j=2j=2 , k=3k=3 . In this case, a1+a2+a3=0a_1 + a_2 + a_3 = 0 , which is an element of the array ( a2=0a_2 = 0 ), so the array is 3SUM-closed.

In the second test case, a1+a4+a5=1a_1 + a_4 + a_5 = -1 , which is not an element of the array. Therefore, the array is not 3SUM-closed.

In the third test case, ai+aj+ak=0a_i + a_j + a_k = 0 for all distinct ii , jj , kk , and 00 is an element of the array, so the array is 3SUM-closed.

首页