当前位置:网站首页>[exercise-1] (UVA 673) parentheses balance/ balanced brackets (stack)
[exercise-1] (UVA 673) parentheses balance/ balanced brackets (stack)
2022-07-06 15:56:00 【Flame car】
A . Parentheses Balance
Description
You are given a string consisting of parentheses () and []. A string of this type is said to be correct:
(a ) if it is the empty string
(b ) if A and B are correct, AB is correct,
(c ) if A is correct, (A) and [A] is correct.
Write a program that takes a sequence of strings of this type and check their correctness. Your program can assume that the maximum string length is 128.
Input
The file contains a positive integer n and a sequence of n strings of parentheses ‘()’ and ‘[]’, one string a line.
Output
A sequence of ‘Yes’ or ‘No’ on the output file.
Samples
Input
3
([])
(([()])))
([()])()
Output
Yes
No
Yes
What do you mean :
Enter a include "()“ and ”[]" The bracket sequence of , Judge whether it is legal . The rules :
① Empty string method
② If A and B It's all legal , be AB legal
③ If A Legal principle (A) and [A] It's all legal
AC Code :
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <stack>
using namespace std;
int n;
int main()
{
cin >> n;
getchar();
while(n--){
string s;
stack<char>st;
getline(cin,s);
int len = s.size();
for(int i = 0; i < len; i++)
{
if(st.empty())
st.push(s[i]);
else
{
if((s[i] == ')' && st.top() == '(') || (s[i] == ']' && st.top() == '['))
st.pop();
else
st.push(s[i]);
}
}
if(st.empty())
cout << "Yes" << endl;
else
cout << "No" << endl;
}
return 0;
}
It's quite speechless , This question is too annoying …… Thought it was a water problem , I didn't expect it to be a dirty water problem , How annoying .
If you understand the meaning of the topic, it should not be very difficult ( Probably ), I found out when I wrote this blog Empty strings are also legal characters !!
No wonder you have to getline() Input , This is the input empty string .
But why do I have to write one before putchar() ??? Is not very good , If there is a big man, you can tell me (T^T).
These two points are simply disgusting, I guess , There is nothing to say about an exam stack (stack) I have to do all these fancy things …… I'm not good at learning !
thought :
① Use the stack to store "(" and “[”
② If you come across ")" It depends on whether the top of the stack is "(", If it is "[“ Or the stack is empty , Is an illegal string .
③ If you come across ”]" It depends on whether the top of the stack is "[", If it is "(" Or the stack is empty , Is an illegal string .
Thought is like this , How to write the code depends on you !
、
边栏推荐
- mysql导入数据库报错 [Err] 1273 – Unknown collation: ‘utf8mb4_0900_ai_ci’
- China exterior wall cladding (EWC) market trend report, technical dynamic innovation and market forecast
- Research Report of peripheral venous catheter (pivc) industry - market status analysis and development prospect prediction
- 1010 things that college students majoring in it must do before graduation
- SSM框架常用配置文件
- F - Birthday Cake(山东省赛)
- 区间和------离散化
- STM32 learning record: play with keys to control buzzer and led
- 【高老师软件需求分析】20级云班课习题答案合集
- 【练习-9】Zombie’s Treasure Chest
猜你喜欢
X-forwarded-for details, how to get the client IP
【练习-7】Crossword Answers
【高老师UML软件建模基础】20级云班课习题答案合集
Learning record: use stm32f1 watchdog
TCP的三次握手与四次挥手
洛谷P1102 A-B数对(二分,map,双指针)
渗透测试 ( 1 ) --- 必备 工具、导航
C语言学习笔记
渗透测试 ( 7 ) --- 漏洞扫描工具 Nessus
Learning record: understand systick system timer and write delay function
随机推荐
Path problem before dynamic planning
对iptables进行常规操作
Report on the market trend, technological innovation and market forecast of printing and decorative paper in China
VS2019初步使用
X-forwarded-for details, how to get the client IP
Market trend report, technical innovation and market forecast of lip care products in China and Indonesia
Research Report on medical anesthesia machine industry - market status analysis and development prospect prediction
Opencv learning log 32 edge extraction
Cost accounting [16]
通俗地理解什么是编程语言
Research Report on printed circuit board (PCB) connector industry - market status analysis and development prospect forecast
0-1背包问题(一)
Research Report on market supply and demand and strategy of China's medical chair industry
Research Report on market supply and demand and strategy of China's land incineration plant industry
B - 代码派对(女生赛)
差分(一维,二维,三维) 蓝桥杯三体攻击
C语言学习笔记
Cost accounting [18]
Gartner: five suggestions on best practices for zero trust network access
Research Report on shell heater industry - market status analysis and development prospect forecast