#abc274d. [abc274_d]Robot Arms 2

[abc274_d]Robot Arms 2

问题陈述

给定一个长度为NN的正整数序列A=(A1,A2,,AN)A = (A_1, A_2, \dots, A_N),和整数xxyy
确定是否可以在xyx y坐标平面上放置N+1N+1个点p1,p2,,pN,pN+1p_1, p_2, \dots, p_N, p_{N+1},以满足以下所有条件。 (允许将两个或多个点放置在同一坐标上。)

  • p1=(0,0)p_1 = (0, 0)
  • p2=(A1,0)p_2 = (A_1, 0)
  • pN+1=(x,y)p_{N+1} = (x, y)
  • pip_ipi+1p_{i+1}之间的距离是AiA_i。 (1iN1 \leq i \leq N
  • 线段pipi+1p_i p_{i+1}pi+1pi+2p_{i+1} p_{i+2}形成9090度角。 (1iN11 \leq i \leq N - 1

约束条件

  • 2N1032 \leq N \leq 10^3
  • 1Ai101 \leq A_i \leq 10
  • x,y104|x|, |y| \leq 10^4
  • 输入中的所有值都是整数。

输入

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

NN xx yy A1A_1 A2A_2 \dots ANA_N

输出

如果可以放置p1,p2,,pN,pN+1p_1, p_2, \dots, p_N, p_{N+1}以满足问题陈述中的所有条件,则打印Yes;否则,打印No