856. 括号的分数

题目

  1. 括号的分数
    给定一个平衡括号字符串 S,按下述规则计算该字符串的分数:

() 得 1 分。
AB 得 A + B 分,其中 A 和 B 是平衡括号字符串。
(A) 得 2 * A 分,其中 A 是平衡括号字符串。

示例 1:

输入: “()”
输出: 1
示例 2:

输入: “(())”
输出: 2
示例 3:

输入: “()()”
输出: 2
示例 4:

输入: “(()(()))”
输出: 6

提示:

S 是平衡括号字符串,且只含有 ( 和 ) 。
2 <= S.length <= 50

我的解答

这题没有做出来,我一直在纠结怎么判断一个完整的括号结束了,什么时候弹出栈内的得分*2.用了两个栈分别存储得分和括号,比较混乱。

大神解答

下面是大神比较清晰的思路
856. 括号的分数

方法二

统计最深层的括号

如果当前遍历到的是)且上一个是(,那么现在就是一个最深层的括号。

856. 括号的分数

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-10
  • 2021-07-11
  • 2022-02-19
  • 2021-06-12
猜你喜欢
  • 2021-12-26
  • 2021-08-27
  • 2021-11-13
  • 2022-01-16
  • 2021-12-21
  • 2021-10-19
相关资源
相似解决方案