#P20007. 徐阳破阵 · 括号封印
徐阳破阵 · 括号封印
徐阳破阵 · 括号封印
题目背景
徐阳一路杀到云剑宗藏经阁深处,面前是一扇铭刻着密密麻麻括号符号的青铜巨门。
"这是上古仙帝留下的括号封印,"残破的石碑上刻着这样一段话——
封印之上遍布三种仙纹:
- 圆纹
() - 方纹
[] - 花纹
{}
要解开封印,必须按正确的嵌套次序施法。每种右纹必须匹配最近出现的同种左纹。若次序有误,封印反噬,闯入者灰飞烟灭。
"区区括号,也敢挡我十万年修为?"徐阳冷笑,手中掐诀,准备一举破阵。
题目描述
给定 T 组数据,每组包含一个仅由 '('、')'、'['、']'、'{'、'}' 组成的括号字符串 S。判断该括号序列是否合法。
合法条件:
- 左括号必须用相同类型的右括号闭合。
- 左括号必须以正确的顺序闭合(后开先闭,即"栈"顺序)。
- 每个右括号都必须有一个对应的左括号。
输入格式
第一行一个整数 T,表示数据组数。
接下来 T 行,每行一个字符串 S。
输出格式
T 行,每行输出 YES 或 NO。
样例
4
()
()[]{}
(]
([])
YES
YES
NO
YES
数据范围
- 1 ≤ T ≤ 100
- 1 ≤ len(S) ≤ 10^4
- S 仅包含字符
()[]{}