#4299. 伊吕波和俳句(新ABC版)(Iroha and Haiku (New ABC Edition))

伊吕波和俳句(新ABC版)(Iroha and Haiku (New ABC Edition))

题目描述

有一个长度为 NN 的序列 A=(A0,...,AN1)A=(A_0,...,A_{N-1})。判断是否存在一个整数元组 (x,y,z,w)(x,y,z,w) 满足以下所有条件:

  1. 0x<y<z<wN0 ≤ x < y < z < w ≤ N

  2. Ax+Ax+1+...+Ay1=PA_x + A_{x+1} + ... + A_{y-1} = P

  3. Ay+Ay+1+...+Az1=QA_y + A_{y+1} + ... + A_{z-1} = Q

  4. Az+Az+1+...+Aw1=RA_z + A_{z+1} + ... + A_{w-1} = R

输入格式

输入从标准输入中给出,格式如下:

NN PP QQ RR

A0A_0 A1A_1 ... AN1A_{N-1}

输出格式

如果存在满足条件的元组,输出 Yes;否则,输出 No

样例

10 5 7 5
1 3 2 2 2 3 1 4 3 2
Yes
9 100 101 100
31 41 59 26 53 58 97 93 23
No
7 1 1 1
1 1 1 1 1 1 1
Yes

样例1解释

(x,y,z,w)=(1,3,6,8)(x,y,z,w)=(1,3,6,8) 满足条件。

数据范围

  • 3N2×1053 ≤ N ≤ 2×10^5
  • 1Ai1091 ≤ A_i ≤ 10^9
  • 1P,Q,R10151 ≤ P,Q,R ≤ 10^{15}
  • 所有输入均为整数。

来源

  • AtCoder ABC265D