#1555. 正则括号
正则括号
题目描述
请判断下列是否是正则括号。 正则括号: 定义 1: 一个由 '(' 和 ')' 组成的字符串是正则括号序列,当且仅当:
从左到右扫描时,任意前缀中 '(' 的数量 ≥ ')' 的数量; 整个字符串中 '(' 与 ')' 的总数相等。 定义 2: 一个括号序列是正则的,当且仅当可以在每对匹配的括号内部填入数字 1 和加号 +,使其成为一个语法合法、值为正整数的算术表达式。
举个例子:()()可以写成(1)+(1),故其为正则括号;()(()无法写成合法的算术表达式,故其不合法;
输入格式
一行字符串,仅由字符 '(' 和 ')' 组成。字符串长度不超过2e5。
输出格式
如果输入是正则括号序列,输出 YES;否则,输出 NO。
样例
()()()(())
YES
样例可以写成(1)+(1)+(1)+(1+(1)+1),符合要求。