当前位置:   article > 正文

华为OD机试 - 表达式括号匹配(Java & JS & Python & C)_华为od 括号嵌套

华为od 括号嵌套

题目描述

(1+(2+3)*(3+(8+0))+1-2)这是一个简单的数学表达式,今天不是计算它的值,而是比较它的括号匹配是否正确。

前面这个式子可以简化为(()(()))这样的括号我们认为它是匹配正确的,

而((())这样的我们就说他是错误的。注意括号里面的表达式可能是错的,也可能有多个空格,对于这些我们是不用去管的,

我们只关心括号是否使用正确。

输入描述

给出一行表达式(长度不超过 100)。

输出描述

如果匹配正确输出括号的对数,否则输出-1。

用例

输入 (1+(2+3)*(3+(8+0))+1-2)
输出 4
说明

题目解析

本题就是括号匹配的变种题,只是加入了一些干扰字符,我们可以用正则去掉非()的字符,然后利用栈结构校

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/708669
推荐阅读
相关标签
  

闽ICP备14008679号