创想实验室
我们都是梦想家

Brackets

描述

给定一个字符串,由(*)这三个字符组成。现在你可以将其中的每个*变成一个左括号或者一个右括号或者删除。请判断能否形成一个合法的括号序列。

一个括号序列S是合法的,当且仅当它满足下列任一条件:

  • S为空。
  • S = (A),其中A为一个合法的括号序列。
  • S = AB,其中AB均为合法的括号序列。

例如,() , ()()和((()))()均为合法的括号序列。而)(和())(不是合法的括号序列。

输入

输入的第一行为一个整数T,代表有 T (1 ≤ T ≤ 100) 组数据。接下来有T组测试数据。

每组数据有两行,输入的第一行为n,表示为字符串的长度(1 ≤ n ≤ 10000),第二行为需要判断的字符串,保证该字符串仅由(*)三种字符组成,且长度为n

输出

对于每组数据输出一行,如果能形成合法的括号序列,输出YES (不含引号,下同),否则输出NO。

样例输入

样例输出

代码一

代码二

 

网站所发布的代码已提交通过,代码可能经过修改防止抄袭,未经允许不得转载:创想实验室 » Brackets
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址