zoukankan      html  css  js  c++  java
  • 921.Minimum Add to Make Parentheses Valid.

    Given a string S of '(' and ')' parentheses, we add the minimum number of parentheses ( '(' or ')', and in any positions ) so that the resulting parentheses string is valid.

    Formally, a parentheses string is valid if and only if:

    • It is the empty string, or
    • It can be written as AB (A concatenated with B), where A and Bare valid strings, or
    • It can be written as (A), where A is a valid string.

    Given a parentheses string, return the minimum number of parentheses we must add to make the resulting string valid.

    Example 1:

    Input: "())"
    Output: 1
    

    Example 2:

    Input: "((("
    Output: 3
    

    Example 3:

    Input: "()"
    Output: 0
    

    Example 4:

    Input: "()))(("
    Output: 4

    Note:

    1. S.length <= 1000
    2. S only consists of '(' and ')' characters.

    使用栈。

    Runtime: 0 ms, faster than 100.00% of C++ online submissions forMinimum Add to Make Parentheses Valid.

    #include<string>
    #include<iostream>
    #include <stack>
    
    using namespace std;
    
    class Solution {
    public:
        int minAddToMakeValid(string S) {
            stack<int> st;
            for(auto a: S){
                if('('==a)
                    st.push(a);
                else if(!st.empty()&&st.top()=='('){
                    st.pop();
                }else{
                    st.push(a);
                }
            }
            return st.size();
        }
    };
    
    int main(){
        Solution solution=Solution();
        cout<<solution.minAddToMakeValid("())")<<endl; //1
        cout<<solution.minAddToMakeValid("(((")<<endl; //3
        cout<<solution.minAddToMakeValid("()")<<endl;  //0
        cout<<solution.minAddToMakeValid("()))((")<<endl; //4
        cout<<solution.minAddToMakeValid("(()())((")<<endl;//2
    
    }
  • 相关阅读:
    Maven项目上总有一个小红叉问题
    Maven web项目创建
    MogileFS操作指令
    MogileFS安装
    mongo与spring集合
    linux上启动tomcat报错:Failed to read schema document 'http://www.springframework.org/schema/data/mongo/spring-mongo-2.0.xsd
    数据导入导出
    备份和恢复
    身份验证
    Mongo DB分片
  • 原文地址:https://www.cnblogs.com/learning-c/p/9846786.html
Copyright © 2011-2022 走看看