链接:登录—专业IT笔试面试备考平台_牛客网

题目描述

康康刚学习编程,一天教程序设计的刘老师给他出了个问题,并跟他说做不完不能走!康康看到题目傻眼了,这我哪会做啊,于是偷偷通过QQ把题目发给了你,希望你能够帮他做出来。

题目是这样的:

给你一个括号的序列,比如()()),你可以在其中添加'('或者')',现在你希望添加尽可能少的括号,让这个括号序列合法,请问你应该添加多少括号,才能使这个括号序列合法?

合法的括号序列:()((()))

不合法的括号序列)()(())(,或者()))))等

输入描述:

第一行一个整数n,代表这个序列的长度,一个序列代表这个括号序列

输出描述:

输出最少的添加的括号字符数

示例1

输入

5
((())

输出

1

说明

可以这么添加:((()))

示例2

1
(

输出

1

说明

可以这么添加:()

示例3

输入

1
)

输出

复制1

1

说明

可以这么添加:()

示例4

输入

2
()

输出

0

说明

合法,不用任何操作~

题解:不多说,只让求加几个半括号是常规题目

ACCODE:

#include <iostream>
#include <algorithm>
#include <stack>
#include <cstring>
#define inf 0x3f3f3f3f
using namespace std;
typedef long long ll;
#define N 500
typedef pair<int,int> PII;
typedef pair<double,double> PDD;
int n;
string s;
stack<int>st;
int main(){cin>>n;cin>>s;for(int i=0;i<s.length();i++){if(s[i]=='(')st.push('(');else {if(!st.empty()&&st.top()=='('){st.pop();}else{st.push(')');}}}cout<<st.size();
}

问加几个括号变合法序列相关推荐

  1. NLP中各框架对变长序列的处理全解

    ©PaperWeekly 原创 · 作者|海晨威 学校|同济大学硕士生 研究方向|自然语言处理 在 NLP 中,文本数据大都是变长的,为了能够做 batch 的训练,需要 padding 到相同的长度 ...

  2. pytorch中如何处理RNN输入变长序列padding

    一.为什么RNN需要处理变长输入 假设我们有情感分析的例子,对每句话进行一个感情级别的分类,主体流程大概是下图所示: 思路比较简单,但是当我们进行batch个训练数据一起计算的时候,我们会遇到多个训练 ...

  3. evaluate函数使用无效_使用Keras和Pytorch处理RNN变长序列输入的方法总结

    最近在使用Keras和Pytorch处理时间序列数据,在变长数据的输入处理上踩了很多坑.一般的通用做法都需要先将一个batch中的所有序列padding到同一长度,然后需要在网络训练时屏蔽掉paddi ...

  4. lstm 变长序列_keras在构建LSTM模型时对变长序列的处理操作

    我就废话不多说了,大家还是直接看代码吧~ print(np.shape(X))#(1920, 45, 20) X=sequence.pad_sequences(X, maxlen=100, paddi ...

  5. 生成n对括号的合法全排列

    生成n对括号的合法全排列: 给定一整数N,输出N对括号的合法全排列 例: 2 3 ()() (()) ()()() (())() ()(()) ((())) 分析: 很经典的需要迭代来进行实现. 迭代 ...

  6. PyTorch中使用LSTM处理变长序列

    使用LSTM算法处理的序列经常是变长的,这里介绍一下PyTorch框架下使用LSTM模型处理变长序列的方法.需要使用到PyTorch中torch.nn.utils包中的pack_padded_sequ ...

  7. 盒子加内边距和变宽的溢出问题

    盒子加内边距和变宽的溢出问题 1.盒子大小 = 内容的宽度和高度 + 内边距(padding) + 变宽(border) 2.盒子会自动撑大的解决办法 算出盒子大小(由上头公式),然后修改width和 ...

  8. 入栈和出栈操作的合法序列判定

    入栈和出栈操作的合法序列判定 [问题描述]假设以I和O分别表示入栈和出栈操作,栈的初态和终态均为空.入栈和出栈的操作序列表示为仅由I和O组成的序列.请编写程序判断一个给定序列是否合法. [输入形式]给 ...

  9. 计算机硬盘移位,旧电脑挂了3.5硬盘很鸡肋?加一物秒变移动硬盘

    原标题:旧电脑挂了3.5硬盘很鸡肋?加一物秒变移动硬盘 随着SSD的普及,大批的3.5寸大硬盘闲置下来,发现不少小伙伴都对它们束手无策,只能将它们束之高阁然后不理不问:近来,存储介质涨得那叫一个疯,于 ...

最新文章

  1. 解决报错:gpg: keyserver receive failed: No dirmngr
  2. AMAB interconnector PL301(二)
  3. GridView总结二:GridView自带编辑删除更新
  4. Linux 之二 Linux 多线程
  5. 洛谷 - P4009 汽车加油行驶问题(分层图最短路/最小费用最大流)
  6. linux环境下安装gcc
  7. Django项目:CRM(客户关系管理系统)--12--05PerfectCRM实现King_admin注册功能获取内存01...
  8. 密钥协商(密钥交换)机制的讲解
  9. STL 合集(不断补充)
  10. tomcat命令linux,Linux下一些操作Tomcat的命令
  11. oracle学习笔记---oracle10g 卸载方法
  12. [UOJ336]无限之环
  13. JAVA编程语言基础第六章
  14. 教你怎么搞定P2P终结者的网速限制
  15. 弘辽电商主题四:淘宝店遇到恶意敲诈怎么办?客服应该如何应对?
  16. 当心长角怪生物...闪动你的招牌...
  17. 计算机实用教学,【实用】计算机教学工作计划3篇
  18. Scrapy框架爬取昵图网图片
  19. android,键盘遮挡了输入框,完美解决android键盘遮挡问题
  20. matlab模糊控制图怎么导出_4步教你学会使用matlab模糊控制工具箱 | 学步园

热门文章

  1. BQ25611D中文手册
  2. 文献汇报 基于差分进化的混合人工蜂群算法
  3. 【天王星小课堂】第2讲 | 什么是量化投资
  4. 小米 信号测试软件,小米MIX 3信号实测:完胜iPhone XS Max
  5. UWB技术主要应用在哪些领域
  6. Gbase8s数据库ADD ARRAY 子句
  7. Hacking The Box----Awkward
  8. 信号完整性-7介电常数
  9. 浅析一下,优秀程序化量化交易者成功的要素是什么?
  10. 巧用树莓派+MotionEyeOS+PushPlus实现摄像头监控系统,支持微信推送