最新华为OD机试
题目描述
现有一字符串仅由 ‘(‘,’)’,‘{‘,’}’,’[‘,’]’六种括号组成。
若字符串满足以下条件之一,则为无效字符串:
①任一类型的左右括号数量不相等;
②存在未按正确顺序(先左后右)闭合的括号。
输出括号的最大嵌套深度,若字符串无效则输出0。
0≤字符串长度≤100000
输入描述
一个只包括 ‘(‘,’)’,‘{‘,’}’,’[‘,’]’的字符串
输出描述
一个整数,最大的括号深度
示例1
输入
([]{()})
输出
3
说明
有效字符串,最大嵌套深度为3
示例2
输入
(]
输出
0
说明
无效字符串,有两种类型的左右括号数量不相等
示例3
输入
([)]
输出
0
说明
无效字符串,存在未按正确顺序闭合的括号
示例4
输入
)(
输出
0
说明
无效字符串,存在未按正确顺序闭合的括号。
C++
#include <iostream>
#include <unordered_map>

本文介绍了华为OD统一考试B卷中的一道关于最大括号深度的题目,要求判断字符串中括号的有效性并计算最大嵌套深度。提供了C++、JavaScript、Java和Python四种语言的解题思路和示例代码。注意,2023年的华为OD考试已将旧题库更新为A卷和B卷,考生需留意试卷类型。
订阅专栏 解锁全文
2648

被折叠的 条评论
为什么被折叠?



