AT_abc394_d [ABC394D] Colorful Bracket Sequence
题目描述
[problemUrl]: https://atcoder.jp/contests/abc394/tasks/abc394_d
给定一个由 6 种字符 `(`, `)`, `[`, `]`, `` 组成的字符串 $S$。
当字符串 $T$ 满足以下条件时,称其为卡芙乐括号列:
> 通过执行以下操作若干次(包括零次)可以将 $T$ 变为空字符串:
>
> - 若 $T$ 中存在连续的 `()`, `[]`, `` 子字符串,选择其中任意一个删除。
> - 若删除的子字符串位于 $T$ 的开头或结尾,则将剩余部分作为新的 $T$。
> - 否则,将删除位置前后的字符串连接为新的 $T$。
请判断 $S$ 是否为卡芙乐括号列。
输入格式
输入通过标准输入按以下格式给出:
> $S$
输出格式
若 $S$ 是卡芙乐括号列则输出 `Yes`,否则输出 `No`。
说明/提示
### 约束条件
- $S$ 是长度介于 $1$ 到 $2 \times 10^5$ 之间的字符串
- $S$ 仅由 `(`, `)`, `[`, `]`, `` 组成
### 样例解释 1
对于 $S=$ `([])()`,可通过以下操作变为空字符串:
- 删除第 2-3 字符 `[]`,得到新字符串 `()()`。
- 删除第 1-2 字符 `()`,得到新字符串 `()`。
- 删除第 1-2 字符 ``,得到新字符串 `()`。
- 删除 `()` 后字符串变为空。
因此输出 `Yes`。
### 样例解释 2
$S=$ `([` 不包含任何 `()`, `[]`, `` 子字符串,无法执行任何操作,因此输出 `No`。
### 样例解释 3
无法通过操作将 $S=$ `>