题解 | 括号匹配深度

括号匹配深度

https://www.nowcoder.com/practice/a2d5b1875bb0408384278f40d1f236c9?channelPut=tracker2

#include <algorithm>
#include <iostream>
#include <valarray>
using namespace std;

int main() {
    string s;
    cin >> s;
    int maxx = 0;
    int temp = 0;
    for(char c : s){
        if (c == '(') {
            temp ++;
            maxx = max(temp, maxx); // 深度最大值随着遍历进入下一层括号而不断更新
        }
        else {
            temp --; 
            //逻辑就是当遇到 ) 时,当前深度应当回溯至上一层括号,毕竟你当前深度的已经没戏了,
            //只能看看上一级括号里是否包含其他内嵌括号,如果存在,那就进入这一内嵌括号,深度加一。
        }
    }
    cout << maxx;


}

全部评论

相关推荐

27届学院本誓死冲击...:自我评价和校园经历全删了,荣誉经历只留奖学金,项目也全得换都不如外卖
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
正在热议
更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务