#arc138b. [arc138_b]01 Generation

[arc138_b]01 Generation

题目描述

Snuke 打算构造一个长度为 NN 的整数序列,序列中的元素只能是 0011。他从一个空序列 xx 开始,并且按照自己喜欢的任意顺序进行下面两种操作共 NN 次。

  • 操作 A:翻转 xx 中的每个元素,即将每个 00 变为 11,每个 11 变为 00。然后,在 xx 的开头添加 00
  • 操作 B:在 xx 的末尾添加 00

给定一个长度为 NN 的由 0011 构成的整数序列 A=(A1,A2,cdots,AN)A=(A_1,A_2,\\cdots,A_N)。确定是否可以使得 xx 等于 AA

约束条件

  • 1N2×1051 \leq N \leq 2 \times 10^5
  • 0Ai10 \leq A_i \leq 1
  • 输入中的所有值都是整数。

输入

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

NN A1A_1 A2A_2 cdots\\cdots ANA_N

输出

如果可以使得 xx 等于 AA,输出Yes;否则输出No


示例输入 1

4
0 1 1 0

示例输出 1

Yes

Snuke 可以进行以下操作。

  • x=()x=() 开始。
  • 进行操作 A,得到 x=(0)x=(0)
  • 进行操作 B,得到 x=(0,0)x=(0,0)
  • 进行操作 A,得到 x=(0,1,1)x=(0,1,1)
  • 进行操作 B,得到 x=(0,1,1,0)x=(0,1,1,0)

示例输入 2

4
1 0 0 0

示例输出 2

No

示例输入 3

4
0 0 0 1

示例输出 3

No