#AT1588. F - Bracket Sequencing

F - Bracket Sequencing

F - 括号序列

分数:$600$ 分

问题描述

一个括号序列是一个满足以下条件的字符串:

  1. 一个空字符串;
  2. 按照如下顺序连接 (、$A$、),其中 $A$ 是一个括号序列;
  3. 按照如下顺序连接 $A$ 和 $B$,其中 $A$ 和 $B$ 都是非空括号序列。

给定 $N$ 个字符串 $S_i$。是否可以通过以某种顺序连接所有 $N$ 个字符串来形成一个括号序列?

约束

  • $1 \leq N \leq 10^6$
  • 字符串 $S_i$ 的总长度不超过 $10^6$。
  • $S_i$ 是一个由 () 构成的非空字符串。

输入

从标准输入读入数据,数据格式如下:

NN

S1S_1

::

SNS_N

输出

如果可以以某种顺序连接所有 $N$ 个字符串来形成一个括号序列,则输出 Yes;否则,输出 No


2
)
(()
Yes

按照顺序连接 (()),形成了一个括号序列。


2
)(
()
No

4
((()))
((((((
))))))
()()()
Yes

3
(((
)
)
No