博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVa 673 (括号配对) Parentheses Balance
阅读量:5075 次
发布时间:2019-06-12

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

本来是当做水题来做的,后来发现这道题略坑。

首先输入的字符串可能是空串,所以我用了gets函数,紧接着就被scanf("%d", &n)后面的换行符坑掉了。

于是乎再加一句getchar()

1 #include 
2 #include
3 #include
4 using namespace std; 5 6 const int maxn = 150; 7 char s[maxn]; 8 9 bool ok(const char& c1, const char& c2)10 {11 if(c1 == '(' && c2 == ')') return true;12 if(c1 == '[' && c2 == ']') return true;13 return false;14 }15 16 int main()17 {18 //freopen("in.txt", "r", stdin);19 20 int n;21 scanf("%d", &n); getchar();22 while(n--)23 {24 gets(s);25 stack
S;26 while(!S.empty()) S.pop();27 int l = strlen(s);28 if(l % 2 != 0)29 {30 puts("No");31 continue;32 }33 bool flag = true;34 for(int i = 0; i < l; ++i)35 {36 if(s[i] == '(' || s[i] == '[') S.push(s[i]);37 else38 {39 if(S.empty()) { flag = false; break; }40 else if(ok(S.top(), s[i])) S.pop();41 else { flag = false; break; }42 }43 }44 if(!S.empty()) flag = false;45 printf("%s\n", flag ? "Yes" : "No");46 }47 48 return 0;49 }
代码君

 

转载于:https://www.cnblogs.com/AOQNRMGYXLMV/p/4271346.html

你可能感兴趣的文章
不变(Immutable)模式
查看>>
react-native run-android时 SDK location not found.报错
查看>>
75)编写嗅发器
查看>>
内存池原理大揭秘
查看>>
快速探索,音视频技术不再神秘
查看>>
惊喜!腾讯云豪掷660万代金券!助力直通硅谷创业大赛
查看>>
【viewResolver】 springmvc jsp
查看>>
6-28 random模块
查看>>
java.lang.reflect.InvocationTargetException
查看>>
hdu 5179 beautiful number(构造,,,,)
查看>>
dao层的泛型实现(2种方法)
查看>>
用Python和FFmpeg查找大码率的视频文件
查看>>
算法导论 文章12章 二叉搜索树
查看>>
Android学习笔记(四十):Preference的使用
查看>>
(转)linux sort,uniq,cut,wc命令详解
查看>>
关于ExecuteNonQuery执行的返回值(SQL语句、存储过程)
查看>>
UVa540 Team Queue(队列queue)
查看>>
mysql数据增删改查
查看>>
shell中下载最新版本或指定版本的办法(Dockerfile 中通用)
查看>>
极客时间-左耳听风-程序员攻略-分布式架构工程设计
查看>>