1332: 【栈的应用】括号匹配

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:113 Solved:13

Description

假设一个表达式有英文字母(小写)、运算符(+,-,*,/)和左右小(圆)括号构成,以"@"作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返回括号对数;否则返回NO。表达式长度小于255,左圆括号少于20个。

Input

一个字符串

Output

一个结果

Sample Input Copy

a+b*(c-(a*f+e)*u)/(g+d)@

Sample Output Copy

3

HINT

再如:
输入:a+b*(c+d@
输出:NO
栈的应用:遇到左括号即入栈,遇到右括号即弹栈,同时计数,最后栈为空即匹配,栈下溢出左括号少,栈不空则右括号少,均为出错

Source/Category