括号匹配 秒速五厘米 2022-06-02 08:53 253阅读 0赞 <table style="width:1615px; margin-bottom:20px; background-color:transparent"> <tbody> <tr> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 成绩</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 10</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 开启时间</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 2017年10月18日 星期三 23:55</td> </tr> <tr> <td style="padding:4px; line-height:20px; vertical-align:middle"> 折扣</td> <td style="padding:4px; line-height:20px; vertical-align:middle"> 0.8</td> <td style="padding:4px; line-height:20px; vertical-align:middle"> 折扣时间</td> <td style="padding:4px; line-height:20px; vertical-align:middle"> 2017年11月8日 星期三 23:55</td> </tr> <tr> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 允许迟交</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 否</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 关闭时间</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 2018年01月8日 星期一 23:55</td> </tr> </tbody> </table> 4 括号匹配 (10分) 成绩: 10 / 折扣: 0.8 假设一个算术表达式中包含圆括号、方括号两种类型的括号,试编写一个判断表达式中括号是否匹配的程序,匹配返回Match succeed!,否则返回Match false!。 例 \[1+2\*(3+4\*(5+6))\]括号匹配 (1+2)\*(1+2\*\[(1+2)+3)括号不匹配 ## 输入 ## 包含圆括号、方括号两种类型括号的算术表达式 ## 输出 ## 匹配输出Match succeed! 不匹配输出 Match false! 例 输入\[1+2\* (3+4\*(5+6))\] 输出Match succeed! <table style="width:1615px; margin-bottom:20px; background-color:transparent"> <thead> <tr> <th style="padding:4px; line-height:20px; vertical-align:bottom; border-top-width:0px"> </th> <th style="padding:4px; line-height:20px; vertical-align:bottom; border-top-width:0px"> 测试输入<span><a href="http://online.bit.edu.cn/moodle/help.php?component=programming&identifier=input&lang=zh_cn" title="关于“测试输入”的帮助" style="color:rgb(67,142,185)" rel="nofollow"><img src="http://online.bit.edu.cn/moodle/theme/image.php/lambda/core/1510491239/help" alt="关于“测试输入”的帮助" style="vertical-align:text-bottom; border:0px; height:16px; padding-left:3px; width:16px"></a></span></th> <th style="padding:4px; line-height:20px; vertical-align:bottom; border-top-width:0px"> 期待的输出<span><a href="http://online.bit.edu.cn/moodle/help.php?component=programming&identifier=expectedoutput&lang=zh_cn" title="关于“期待的输出”的帮助" style="color:rgb(67,142,185)" rel="nofollow"><img src="http://online.bit.edu.cn/moodle/theme/image.php/lambda/core/1510491239/help" alt="关于“期待的输出”的帮助" style="vertical-align:text-bottom; border:0px; height:16px; padding-left:3px; width:16px"></a></span></th> <th style="padding:4px; line-height:20px; vertical-align:bottom; border-top-width:0px"> 时间限制<span><a href="http://online.bit.edu.cn/moodle/help.php?component=programming&identifier=timelimit&lang=zh_cn" title="关于“时间限制”的帮助" style="color:rgb(67,142,185)" rel="nofollow"><img src="http://online.bit.edu.cn/moodle/theme/image.php/lambda/core/1510491239/help" alt="关于“时间限制”的帮助" style="vertical-align:text-bottom; border:0px; height:16px; padding-left:3px; width:16px"></a></span></th> <th style="padding:4px; line-height:20px; vertical-align:bottom; border-top-width:0px"> 内存限制<span><a href="http://online.bit.edu.cn/moodle/help.php?component=programming&identifier=memlimit&lang=zh_cn" title="关于“内存限制”的帮助" style="color:rgb(67,142,185)" rel="nofollow"><img src="http://online.bit.edu.cn/moodle/theme/image.php/lambda/core/1510491239/help" alt="关于“内存限制”的帮助" style="vertical-align:text-bottom; border:0px; height:16px; padding-left:3px; width:16px"></a></span></th> <th style="padding:4px; line-height:20px; vertical-align:bottom; border-top-width:0px"> 额外进程<span><a href="http://online.bit.edu.cn/moodle/help.php?component=programming&identifier=nproc&lang=zh_cn" title="关于“{$a} 个额外进程”的帮助" style="color:rgb(67,142,185)" rel="nofollow"><img src="http://online.bit.edu.cn/moodle/theme/image.php/lambda/core/1510491239/help" alt="关于“{$a} 个额外进程”的帮助" style="vertical-align:text-bottom; border:0px; height:16px; padding-left:3px; width:16px"></a></span></th> </tr> </thead> <tbody> <tr> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 测试用例 1</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> <a href="http://online.bit.edu.cn/moodle/mod/programming/testcase/download_io.php?id=64761&test=82470&type=in&download=0" style="color:rgb(67,142,185); font-size:9pt" rel="nofollow">以文本方式显示</a> <div style="vertical-align:top; padding:0px 5px 0px 0px; width:10em; height:10em; overflow:auto"> <ol style="padding-left:0px; margin-bottom:0px; margin-left:2.5em; overflow:visible"> <li style="line-height:20px; font-family:Consolas,'Courier New',Courier,mono,serif; margin:0px; padding:0px; overflow:visible"> <span style="margin:0px; padding:0px; white-space:nowrap; background-color:rgb(211,211,211)">[1+2*(3+4*(5+6))]↵</span></li> </ol> </div> </td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> <a href="http://online.bit.edu.cn/moodle/mod/programming/testcase/download_io.php?id=64761&test=82470&type=out&download=0" style="color:rgb(67,142,185); font-size:9pt" rel="nofollow">以文本方式显示</a> <div style="vertical-align:top; padding:0px 5px 0px 0px; width:10em; height:10em; overflow:auto"> <ol style="padding-left:0px; margin-bottom:0px; margin-left:2.5em; overflow:visible"> <li style="line-height:20px; font-family:Consolas,'Courier New',Courier,mono,serif; margin:0px; padding:0px; overflow:visible"> <span style="margin:0px; padding:0px; white-space:nowrap; background-color:rgb(211,211,211)">Match succeed!↵</span></li> </ol> </div> </td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 1秒</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 64M</td> <td style="padding:4px; line-height:20px; vertical-align:middle; background-color:rgb(249,249,249)"> 0</td> </tr> <tr> <td style="padding:4px; line-height:20px; vertical-align:middle"> 测试用例 2</td> <td style="padding:4px; line-height:20px; vertical-align:middle"> <a href="http://online.bit.edu.cn/moodle/mod/programming/testcase/download_io.php?id=64761&test=82471&type=in&download=0" style="color:rgb(67,142,185); font-size:9pt" rel="nofollow">以文本方式显示</a> <div style="vertical-align:top; padding:0px 5px 0px 0px; width:10em; height:10em; overflow:auto"> <ol style="padding-left:0px; margin-bottom:0px; margin-left:2.5em; overflow:visible"> <li style="line-height:20px; font-family:Consolas,'Courier New',Courier,mono,serif; margin:0px; padding:0px; overflow:visible"> <span style="margin:0px; padding:0px; white-space:nowrap; background-color:rgb(211,211,211)">(1+2)*(1+2*[(1+2)+3)↵</span></li> </ol> </div> </td> <td style="padding:4px; line-height:20px; vertical-align:middle"> <a href="http://online.bit.edu.cn/moodle/mod/programming/testcase/download_io.php?id=64761&test=82471&type=out&download=0" style="color:rgb(67,142,185); font-size:9pt" rel="nofollow">以文本方式显示</a> <div style="vertical-align:top; padding:0px 5px 0px 0px; width:10em; height:10em; overflow:auto"> <ol style="padding-left:0px; margin-bottom:0px; margin-left:2.5em; overflow:visible"> <li style="line-height:20px; font-family:Consolas,'Courier New',Courier,mono,serif; margin:0px; padding:0px; overflow:visible"> <span style="margin:0px; padding:0px; white-space:nowrap; background-color:rgb(211,211,211)">Match false!↵</span></li> </ol> </div> </td> <td style="padding:4px; line-height:20px; vertical-align:middle"> 1秒</td> <td style="padding:4px; line-height:20px; vertical-align:middle"> 64M</td> <td style="padding:4px; line-height:20px; vertical-align:middle"> 0<br> </td> </tr> </tbody> </table> #include<cstdio> #include<string> #include<map> #include<stack> #include<math.h> #include<iostream> using namespace std; stack<char> Op; stack<int> Opnum; string Instruction; string tmp; int main() { //freopen("1.txt", "r", stdin); int flag1 = 1; int Bleft = 0, Bright = 0, Sleft = 0, Sright = 0; getline(cin, Instruction); for (int i = 0; Instruction[i]; i++) { if (Instruction[i] != '('&& Instruction[i] != ')' && Instruction[i] != '[' && Instruction[i] != ']') continue; else { if (Op.empty() || Instruction[i] == '(' || Instruction[i] == '[') { if (Instruction[i] == ']' || Instruction[i] == ')') { flag1 = 0; break; } else if (Instruction[i] == '(') Sleft++; else if (Instruction[i] == '[') Bleft++; Op.push(Instruction[i]); } else if (Instruction[i] == ')') { Sright++; if (Sright > Sleft) { flag1 = 0; break; } char op; while (!Op.empty() && (op = Op.top()) != '(') { if (op == '[') { flag1 = 0; break; } Op.pop(); } if (!flag1) break; Op.pop(); } else if (Instruction[i] == ']') { Bright++; if (Bright > Bleft) { flag1 = 0; break; } char op; while (!Op.empty()&&(op=Op.top())!='[') { Op.pop(); } Op.pop(); } } } if (!Op.empty()) flag1 = 0; if (!flag1) printf("Match false!\n"); else printf("Match succeed!\n"); return 0; }
相关 【Java】括号匹配 \{\} 括号匹配模式 解题思路 栈 import java.util.Scanner; import java.util.Stack; 心已赠人/ 2022年12月09日 04:53/ 0 赞/ 212 阅读
相关 表达式括号匹配 题目描述 假设一个表达式有英文字母(小写)、运算符`(+,—,,/)`和左右小(圆)括号构成,以“@”作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配, 忘是亡心i/ 2022年12月01日 01:24/ 0 赞/ 199 阅读
相关 括号匹配 <table style="width:1615px; margin-bottom:20px; background-color:transparent"> <tbody> 秒速五厘米/ 2022年06月02日 08:53/ 0 赞/ 254 阅读
相关 括号匹配 [题目 括号匹配][Link 1] 一般的括号匹配问题是这样的: 给出一个字符串,判断这个括号匹配是不是合法的括号匹配。如”((” 和 “())”都不是合法的括号匹配 我会带着你远行/ 2022年05月18日 00:55/ 0 赞/ 207 阅读
相关 括号匹配 栈的应用,括号匹配。 经典做法是,遇左括号压入,遇右括号判断,和栈顶配对就继续,不配对或者栈空就错了。最后判断是否为空。 代码有些麻烦。 我是遇左括号压对应的右括号,最后 你的名字/ 2022年05月06日 06:28/ 0 赞/ 257 阅读
相关 括号匹配 题目描述 假设一个算术表达式中可以包含三种括号:圆括号“(”和“)”,方括号“\[”和“\]”和花括号“\{”和“\}”,且这三种括号可按任意的次序嵌套使用(如:…\ ╰半橙微兮°/ 2022年03月30日 02:28/ 0 赞/ 288 阅读
相关 括号匹配 PTA 02:括号匹配 一、题目 给定一串字符,不超过100个字符,可能包括括号、数字、字母、标点符号、空格,编程检查这一串字符中的( ) ,\[ \],\{ \} 冷不防/ 2022年02月27日 15:54/ 0 赞/ 341 阅读
相关 括号匹配 <table> <tbody> <tr> <td colspan="3"> <h2>括号匹配</h2> </td> </tr> <tr> 约定不等于承诺〃/ 2022年01月07日 04:37/ 0 赞/ 327 阅读
相关 括号匹配 include<stdio.h> include<stack> using namespace std; stack <int> s;//定义一 叁歲伎倆/ 2021年12月01日 17:44/ 0 赞/ 324 阅读
相关 括号匹配 括号配对问题 时间限制: 3000 ms | 内存限制: 65535 KB 难度: 3 描述 现在,有一行括号序列,请你检查这行括号是否配对。 输入 第一行 怼烎@/ 2021年09月22日 07:20/ 0 赞/ 411 阅读
还没有评论,来说两句吧...