srupのメモ帳

競プロで解いた問題や勉強したことを記録していくメモ帳

SRM 688 div2 easy ParenthesesDiv2Easy

問題

問題概要

カッコの階層が最大どこまで行くか。どこまで深くいくか。

解法

'('の時は+1、')'の時は-1していくなかでの最大値が答えとなる。

ミス

特になし。

コード

#include <iostream>
#include <string>
#include <vector>
#include <cstdio>
#include <algorithm>
using namespace std;
typedef long long ll;
#define rep(i,n) for(int i=0;i<(n);i++)
const int mod = 1e9 + 7;

class ParenthesesDiv2Easy{
public:
    int getDepth(string s){
        int ans = 0;
        int tmp = 0;
        rep(i, s.size()){
            if(s[i] == '('){
                tmp++;
            }else{
                tmp--;
            }
            ans = max(ans, tmp);
        }
        return ans;
    }
};