题解:P14731 [ICPC 2022 Seoul R] Parentheses Tree

· · 题解

水题。

思路

  1. 遇到左括号深度增加,遇到右括号深度减少。
  2. 找到叶子节点时,将当前的深度 -1(边数),加到总和里。
  3. 一定要开 long long,我们平时也要习惯开 long long。

    代码

    #include<bits/stdc++.h>
    #define int long long
    using namespace std;
    string s;
    int shendu,ans;
    signed main(){
    cin>>s;
    for (int i=0;i<s.size();i++){
        if (s[i]=='('){
            shendu++;
            if(i<s.size()-1&&s[i+1]==')'){
                ans+=shendu-1;
            }
        }
        else{
            shendu--;
        }
    }
    cout<<ans;
    }