HDU 5831 Rikka with Parenthesis II ——(括号匹配问题)
2024-08-30 16:21:12
用一个temp变量,每次出现左括号,+1,右括号,-1;用ans来记录出现的最小的值,很显然最终temp不等于0或者ans比-2小都是不可以的。-2是可以的,因为:“))((”可以把最左边的和最右边的交换即可,其他-2的情形同理。另外要注意的坑点是Hint里面所说的:“But do nothing is not allowed.”。因此,“()”是不可以的,这个要特判。
代码如下:
#include <stdio.h>
#include <algorithm>
#include <string.h>
#include <math.h>
using namespace std;
const int N = + ; char s[N]; int main()
{
int T;scanf("%d",&T);
while(T--)
{
int n;scanf("%d",&n);
scanf("%s",s+);
if(strlen(s+)== && s[]=='(' && s[]==')')
{
puts("No");
continue;
}
int temp = ;
int ans = ;
for(int i=;i<=n;i++)
{
if(s[i] == ')') temp --;
else temp ++;
ans = min(ans,temp);
}
if(ans<- || temp!=) puts("No");
else puts("Yes");
}
}
最新文章
- 关于java的格式输出控制
- 【POJ3254】Corn Fields 状压DP第一次
- github上写blog
- logback.xml日志配置
- ICMP-type对应表
- 嵌入式Linux的FTP服务端软件(stupid-ftpd)
- ligerUI_入门_001_设置文本能否被编辑、事件
- ipseccmd命令解析
- Unity小厨房之-----背后视角摄像机
- <;audio>;使用2
- Driver 初始化顺序
- 使用ReSharper打造团队代码
- 在mac安装numpy matplotlib scipy
- apollo1.7.1初探(二)使用apollo订阅主题,发布主题消息
- Python的lambda
- FFmpeg 结构体学习(八):FFMPEG中重要结构体之间的关系
- ";她等待刀尖已经太久";--茨维塔耶娃诗抄
- R语言函数总结(转)
- ELK系列一:ELK的安装
- 如何将javascript对象转换成字符串
热门文章
- 《深入实践C++模板编程》之二——模板类
- 《深入实践C++模板编程》之一——Hello模板
- ubuntu14.04 x86编译upx 3.92 及so加固
- svn安装方法
- nested exception is org.apache.ibatis.binding.BindingException
- element-ui 中 el-table 根据scope.row行数据变化动态显示行内控件
- 转载Linux常用命令
- SpringBoot static修饰的字段/方法如何获取application.yml配置
- OPNsense防火墙搭建实验环境,MSF与SSH进行流量转发
- springboot集成redis使用redis作为session报错ClassNotFoundException类RememberMeServices