#YACS202112C4. 两数之和

两数之和

题目描述

给定 nn 个整数 a1,a2,,ana_1,a_2,\cdots,a_n,并且保证

a1a2ana_1 \leq a_2\leq\cdots\leq a_n

再给定一个目标值 tt,请判断能否找到 aia_iaja_j,使得 ai+aj=ta_i+a_j=tiji\neq j

输入格式

  • 第一行:单个整数 nn
  • 第二行:nn 个整数 a1,a2,,ana_1,a_2,\cdots,a_n
  • 第三行:单个整数 tt

输出格式

  • 如果存在一种组合满足要求,输出 Yes
  • 否则,输出 No

数据范围

  • 对于 30%30\% 的数据,1n30001\leq n\leq 3000
  • 对于 60%60\% 的数据,1n100,0001\leq n\leq 100,000
  • 对于 100%100\% 的数据,1n1,000,0001\leq n\leq 1,000,000
  • 1,000,000,000ai1,000,000,000-1,000,000,000\leq a_i\leq 1,000,000,000
  • 2,000,000,000t2,000,000,000-2,000,000,000\leq t \leq 2,000,000,000

样例数据

输入:

4
1 3 5 7
8

输出:

Yes

说明:

8=3+5

输入:

4
2 4 6 8
11

输出:

No

输入:

3
1 2 5
2

输出:

No

说明:

1+1不是一个符合条件的解法,因为输入数据里只有一个1;
单个2也不能算一个符合条件的解法,因为不配对