500102 - 括号匹配3
有四种括号()、[]、{}、<>
,给出一个由组成这四种括号的8中字符构成的字符串,检测这四种括号是否匹配。
匹配:每类括号成对出现,不同类括号之间可以嵌套,但<>
必须在()
内部,()
必须在[]
内部,[]
必须在{}
内部;同种括号可以嵌套任意多层。
例如:{{}}、{[((<>))()]}{}()
是合法的;><、<{}>
则不合法。
输入
第一行,一个正整数n,表示数据组数。
接下来n行,每行一个长度不超过1024的字符串,仅含题目所述8种字符。
对于100%的数据:
1\le n \le 10^5。
输出
n行,每行匹配时输出YES,否则输出NO。
样例
输入
2 {[((<>))()]}{}() <{}>
输出
YES NO