TJ monthly 图灵姬月赛 2020.1

1003. Zeratul与A+B Problem

时间限制: C/C++/Pascal 500 ms; Others 1000 ms

内存限制: 32 MB

题目描述:

判断一个数组中是否有两个数的和加起来等于c,这是一道非常经典的题目,复杂度为 O(nlogn)

现在毒瘤的Zeratul想让你在 O(n) 的复杂度下解决这个问题。

输入格式:

输入第一行包括一个整数 T ,代表数据组数。

每组数据包括三行:

第一行包括一个正整数 n ,代表数组的长度。

第二行包括 n 个整数,代表数组 a[1...n]

第三行包括一个整数 c ,代表查询数组中是否有两个数之和等于 c

输出格式:

对于每组数据输出一行,如果数组中存在两个数之和等于 c ,输出YES,否则输出NO。

样例:

Input
Copy
2
5
1 2 3 4 5
8
5
1 2 3 4 5
10
Output
Copy
YES
NO

数据范围及提示

对于50%的数据, n \le 1000

对于80%的数据, n \le 100000

对于100%的数据, n \le 1000000 0 \le a[i] \le100000000 c int 范围内, T \le 5

注意:本题内存限制为32MB,时间限制为500ms

已结束

积分

题目 计分
1001 100
1002 100
1003 100
1004 100
这里显示的是你在现在一次提交正确所获得的计分。
题目信息

题目类型:传统题

文件IO

输入文件名:plus.in

输出文件名:plus.out

AMAZE UI
Hello world!