#abc283d. [abc283_d]Scope

[abc283_d]Scope

问题描述

一个由小写英文字母,() 组成的字符串被称为好字符串,如果你可以通过以下过程将其变为空字符串:

  • 首先,删除所有小写英文字母。
  • 然后,重复删除连续的 ()

例如,((a)ba) 是一个好字符串,因为删除所有小写英文字母得到 (()),我们可以从中删除第2到第3个字符的连续 () 得到 (),然后最终变为空字符串。

给定一个好字符串 SS。我们用 SiS_i 表示 SS 的第 ii 个字符。

对于每个小写英文字母 abldots\\ldotsz,我们有一个上面写有该字母的球。此外,我们还有一个空盒子。

对于按顺序的每个 i=1,2,i = 1,2, ldots\\ldots ,S,|S|,高桥进行以下操作,除非他晕倒。

  • 如果 SiS_i 是小写英文字母,则将写有该字母的球放入盒子中。如果球已经在盒子里,他就会晕倒。
  • 如果 SiS_i(,则什么都不做。
  • 如果 SiS_i),则取小于 ii 的最大整数 jj,使得 SS 的第 jj 到第 ii 个字符形成一个好字符串。(我们可以证明这样的整数 jj 总是存在。)从盒子中取出他在第 jj 到第 ii 次操作中放入的所有球。

判断高桥是否可以完成一系列操作而不晕倒。

约束条件

  • 1S3×1051 \leq |S| \leq 3 \times 10^5
  • SS 是一个好字符串。

输入

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

SS

输出

如果他可以完成一系列操作而不晕倒,请输出 Yes;否则输出 No


示例输入 1

((a)ba)

示例输出 1

Yes

对于 i=1i = 1,他什么都不做。
对于 i=2i = 2,他什么都不做。
对于 i=3i = 3,他将写有 a 的球放入盒子中。
对于 i=4i = 4j=2j=2 是小于 44 的最大整数,使得 SS 的第 jj 到第 44 个字符形成一个好字符串,所以他从盒子中取出写有 a 的球。
对于 i=5i = 5,他将写有 b 的球放入盒子中。
对于 i=6i = 6,他将写有 a 的球放入盒子中。
对于 i=7i = 7j=1j=1 是小于 77 的最大整数,使得 SS 的第 jj 到第 77 个字符形成一个好字符串,所以他从盒子中取出写有 a 的球和写有 b 的另一个球。

因此,这个案例的答案是 Yes


示例输入 2

(a(ba))

示例输出 2

No

对于 i=1i = 1,他什么都不做。
对于 i=2i = 2,他将写有 a 的球放入盒子中。
对于 i=3i = 3,他什么都不做。
对于 i=4i = 4,他将写有 b 的球放入盒子中。
对于 i=5i = 5,盒子中已经有写有 a 的球了,所以他晕倒,中止了一系列操作。

因此,这个案例的答案是 No


示例输入 3

(((())))

示例输出 3

Yes

示例输入 4

abca

示例输出 4

No