NYOJ的水题--括号匹配问题
基于栈的实现,左括号进栈,右括号匹配出栈。注意,当栈空时有两种情况,匹配成功或是原匹配串的右括号数目大于左括号数目。因此,加了标志。
代码如下:
#include<cstdio>
#include<cstring>
#define max 10010
char str[max];
char stack[max];
int top;
int main()
{
int n,tag;
scanf("%d",&n);getchar();
for(int i=0;i<n;i++)
{
gets(str);
top=tag=0;
for(int j=0;str[j]!='\0';j++)
{
if(str[j]=='['||str[j]=='(')
stack[top++]=str[j];
else
if(str[j]==']'&&top&&stack[top-1]=='[')
top--;
else
if(str[j]==')'&&top&&stack[top-1]=='(')
top--;
else
if(str[j]!=' ')
{tag=1;break;}
}
if(tag||top) printf("No\n");
else
printf("Yes\n");
}
return 0;
}
NYOJ的水题--括号匹配问题相关推荐
- [JS][编程题]括号匹配
括号匹配 题目来源:牛客网 题目链接:括号匹配 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M 题目描述 给定一个只包含括号的字符串,判断字符串是否有效.其 ...
- 括号匹配不一定用栈哦(洛谷P1739题题解,Java语言描述)
说明 有点标题党,严格地说,括号匹配用栈做比较规范. 问题是下面这题有点水啊,简便点大家都开心~~ 题目要求 P1739题目链接 分析 题目太水,所以说我们可以认为什么各种异常不会出现. 只需要--简 ...
- [NYOJ 15] 括号匹配(二)
括号匹配(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:6 描述给你一个字符串,里面只包含"(",")","[" ...
- 【nyoj - 890】 分东西 (水题 二进制)
题干: 分东西 时间限制:1000 ms | 内存限制:65535 KB 难度:1 输入 第一行输出一个数i表示有i组情况(0<i<=10) 接下来的i行,每一行输入两个个数M(0&l ...
- POJ 1936 字符匹配(水题)
题目链接: http://poj.org/problem?id=1936 题目大意: 给定字符a,b,问b中去掉一些字符后能不能得到a 解题思路: 暴力从前往后扫描一遍即可. AC代码: /*** @ ...
- 栈和队列常见oj题(括号匹配问题、栈实现队列、队列实现栈、设计循环队列)
一.括号匹配问题 1.题目要求: 2.大体思路 遍历这个字符串,如果是左括号就让它入栈,如果是右括号就让它和栈顶元素进行匹配(前提是栈中有元素),匹配成功的话就让栈顶元素出栈,匹配失败就返回false ...
- 表达式括号匹配_洛谷1739_栈
题目背景 你猜 题目描述 假设一个表达式有英文字母(小写).运算符(+,-,*,/)和左右小(圆)括号构成,以"@"作为表达式的结束符.请编写一个程序检查表达式中的左右圆括号是否匹 ...
- 【区间dp】uva10003+ uva 1626 括号匹配问题 【有空自己记忆化写一下!!!】
讲道理,其实我还不是太懂,这个题看到了两种写法 之前大概想的差不多,要这样实现呀: 常规写法,大概n--3 递归写法,稍微好理解一点 好了,接下来自从看了liuchuo的博客我要变身玛丽苏橙色了 题目 ...
- 【HDU 1870 --- 愚人节的礼物】栈水题
[HDU 1870 --- 愚人节的礼物]栈水题 Description 四月一日快到了,Vayko想了个愚人的好办法--送礼物.嘿嘿,不要想的太好,这礼物可没那么简单,Vayko为了愚人,准备了一堆 ...
- P1944 最长括号匹配(栈模拟/DP)
P1944 最长括号匹配 可以直接用栈模拟,把匹配好的标记一下, 最后找到最长的匹配输出即可. 如果是要求最长的长度的题那么只需要求数就行了,没必要把原序列真的按照题意改变 如果要求序列,那么只需要按 ...
最新文章
- 分析型数据仓库中读写分离的实现
- java ee web高级,Java EE Web高级开发案例
- java proguard 使用_一步步教你使用Proguard混淆Java源代码
- Linux进程里运行新代码,linux调度器源码分析 - 新进程加入(三)
- Confluence 6 让一个空间可以公众访问
- Vivado 查看HLS生成IP的资源和最高频率
- TiDB源码学习笔记:启动TiDB
- pb一步步开发APP
- 弘兵金融学院 站在山顶 看不见山
- 什么是巴旦木?种植巴旦木树苗产量高吗?
- 认沽期权长短仓应用法
- 实现一个完整的前后端交互
- Android工程师技能表
- 成员介绍网页模板html,HTML5 CSS3 SVG团队成员介绍卡片页面模板
- (93)FPGA面试题-什么是关键路径,怎么处理关键路径?
- html中的空格怎么写,html中空格代码是什么?(总结)
- 系统盘重装服务器系统,服务器系统盘重装
- 用vb编了个数独计算器
- 数字孪生+燃气管理,开启智慧燃气管理新模式
- 计算机反求设计的一般步骤,反求设计