【编程题目 |100分】表达式括号匹配【2022 Q2考试题】
时间限制:C/C++ 1秒,其他语言 2秒
空间限制:C/C++262144K,其他语言524288K
64bit IO Format:%lld
本题可使用本地IDE编码,不能使用本地已有代码,无跳出限制,
编码后请点击”保存并调试“按钮进行代码提交。
题目描述
(1+(2+3)*(3+(8+0))+1-2)这是一个简单的数学表达式,今天不是计算它的值,而是比较它的括号匹配是否正确。
前面这个式子可以简化为(()(()))这样的括号我们认为它是匹配正确的,而((())这样的我们就说他是错误的。注意括号里面的表达式可能是错的,也可能有多个空格,对于这些我们是不用去管的,我们只关心括号是否使用正确。
输入
给出一行表达式(长度不超过 100)。
输出
如果匹配正确输出括号的对数,否则输出-1。
测试用例
示例 1
输入
(1+(2+3)*(3+(8+0))+1-2)
输出
4
示例 2
输入