博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
921.Minimum Add to Make Parentheses Valid.
阅读量:5170 次
发布时间:2019-06-13

本文共 1407 字,大约阅读时间需要 4 分钟。

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
#include
#include
using namespace std;class Solution {public: int minAddToMakeValid(string S) { stack
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<
<

 

转载于:https://www.cnblogs.com/learning-c/p/9846786.html

你可能感兴趣的文章
k8s pod
查看>>
PyTorch DataLoader
查看>>
k8s ReplicaSet
查看>>
Double binary trees
查看>>
k8s Deployment
查看>>
你所需要的只是注意力
查看>>
k8s Service
查看>>
kubeflow
查看>>
k8s Custom Resource
查看>>
BytePS源码解析
查看>>
【C++】非原创|统计代码覆盖率(一:C)
查看>>
JSP 获取Request 经常使用參数
查看>>
第三次作业
查看>>
c#使用 Newtonsoft.Json 将entity转json时,忽略为null的属性
查看>>
thinkphp5--多文件入口设置
查看>>
连接mysql数据库,创建用户模型
查看>>
关于正则表达式 \1 \2之类的问题
查看>>
DRL前沿之:Benchmarking Deep Reinforcement Learning for Continuous Control
查看>>
django uWSGI nginx搭建一个web服务器 确定可用
查看>>
3.4 数据更新
查看>>