括号匹配

Luogu
IDLGB2165
Time1000ms
Memory512MB
DifficultyP2
模拟字符串(入门)
给定只由 $6$ 种括号字符组成的字符串:`(`, `)`, `[`, `]`, `{`, `}`。判断每个字符串是否为“合法括号序列”,合法则输出 YES,否则输出 NO。合法括号序列的定义: - 空串合法; - 若 A 合法,则 `(A)`, `[A]`, `{A}` 均合法; - 若 A 与 B 均合法,则 AB 合法。 ## Input 第一行一个整数 $T$,表示数据组数。接下来 $T$ 行,每行一个只包含上述 $6$ 种字符的字符串。 ## Output 对于每个字符串,输出一行: - 若其为合法括号序列,输出 YES; - 否则输出 NO。 [samples] ## Note 记单串长度记为 $|S|$。测试数据满足 $1 \leq |S| \leq 10^6$,$1 \leq T \leq 2\times 10^5$,同一输入文件内总长度 $\sum |S| \leq 2\times 10^6$,字符串只包含字符 `()[]{}`。
Samples
Input #1
1
()[]{}
Output #1
YES
Input #2
6
()
([)]
([]){}
((((
{[()()]}
}{
Output #2
YES
NO
YES
NO
YES
NO
API Response (JSON)
{
  "problem": {
    "name": "括号匹配",
    "description": {
      "content": "给定只由 $6$ 种括号字符组成的字符串:`(`, `)`, `[`, `]`, `{`, `}`。判断每个字符串是否为“合法括号序列”,合法则输出 YES,否则输出 NO。合法括号序列的定义:   - 空串合法;   - 若 A 合法,则 `(A)`, `[A]`, `{A}` 均合法;   - 若 A 与 B 均合法,则 AB 合法。",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P2"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGB2165"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "给定只由 $6$ 种括号字符组成的字符串:`(`, `)`, `[`, `]`, `{`, `}`。判断每个字符串是否为“合法括号序列”,合法则输出 YES,否则输出 NO。合法括号序列的定义:\n  - 空串合法;\n  - 若 A 合法,则 `(A)`, `[A]`, `{A}` 均合法;\n  - 若 A 与 B 均合法,则 AB 合法。\n\n## Input\n\n第一行一个整数 $T$,表示数据组数...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments