atcoder#ABC167F. [ABC167F] Bracket Sequencing

[ABC167F] Bracket Sequencing

配点 : 600600

問題文

以下のいずれかの条件を満たす文字列を括弧列と定義します。

  1. 空文字列
  2. ある括弧列 AA が存在して、(, AA, ) をこの順に連結した文字列
  3. ある空でない括弧列 AA, BB が存在して、AA, BB をこの順に連結した文字列

NN 個の文字列 SiS_i が与えられます。SiS_i 全てを好きな順序で連結するとき、括弧列を構成することはできますか。

制約

  • 1N1061 \leq N \leq 10^6
  • SiS_i の文字列長の合計は 10610^6 以下
  • SiS_i(, ) のみからなる空でない文字列

入力

入力は以下の形式で標準入力から与えられる。

NN

S1S_1

::

SNS_N

出力

SiS_i を任意の順序で連結するとき、括弧列を構成できるなら Yes、できないなら No を出力せよ。

2
)
(()
Yes

((), ) の順に連結すると括弧列になります。

2
)(
()
No
4
((()))
((((((
))))))
()()()
Yes
3
(((
)
)
No