AlgoMooc
你已开通华为OD训练营权益,还差最后一步——完成入营激活(兑换课程 + 加飞书 + 登记服务群),即可解锁全部课程与专属服务。去激活 →
← 返回题库

P2600. 括号检查

简单通过率 41% · 提交 2,281 · 通过 928
字符串模拟

小慕正在处理一个字符串,这个字符串只包含六种括号:`'('`、`')'`、`'{'`、`'}'`、`'['`、`']'`。如果字符串满足以下任一条件,则被视为无效字符串: - 任意一种左括号和右括号的数量不相等。 - 存在。 小慕需要输出该字符串中括号的,如果字符串无效则输出 `0`。`0 <= 字符串长度 <= 100000`。

提示:带虚线的词点一下有通俗解释。

输入描述

一个只包括 '(', ')', '{', '}', '[', ']' 以一共6种字符的字符串。

输出描述

一个整数,表示最大的括号深度。若字符串无效,则输出 0

示例

示例 1

输入

[]

输出

1

说明:该字符串有效,且最大嵌套深度为 1

示例 2

输入

([]{()})

输出

3

说明:该字符串有效,且最大嵌套深度为 3

示例 3

输入

(]

输出

0

说明:该字符串无效

示例 4

输入

([)]

输出

0

说明:该字符串无效

示例 5

输入

)(

输出

0

说明:该字符串无效

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解
括号嵌套深度图解 示例字符串: ( [ ] { ( ) } ) 第1层 (最外层) 第2层 第3层 (最内层) ( ) [ ] { } ( ) 最大深度 = 3 无效示例 ([)] 因为顺序错误,深度为0
写完代码点「提交」,将对全部测试用例判题。

向老师提问

针对「括号检查」把疑问、代码和报错填清楚,老师收到后能更快、更准地回复你。