首页
DreamJudge
院校信息
考研初试
机试真题
讨论区
兑换中心
登录
注册
上岸
以下题解仅供学习参考使用。
抄袭、复制题解,以达到刷AC率/AC数量或其他目的的行为,在N诺是严格禁止的。
N诺非常重视学术诚信。此类行为将会导致您成为作弊者。具体细则请查看N诺社区规则。
Hegel
2023年3月21日 21:11
括号匹配
P1067
回复 0
|
赞 0
|
浏览 6.0k
#include <iostream> #include <string> #include <stack> using namespace std; int main() { int n; cin >> n; string* s = new string[n]; for (int i = 0; i < n; i++) cin >> s[i]; for (int i = 0,j, flag = 0; i < n; i++) { stack <char> st; ...
huangdashuaige
2023年2月19日 20:39
P1067 括号的匹配
P1067
回复 0
|
赞 0
|
浏览 3.8k
#include <iostream> #include <stack> #include <string> using namespace std; int main(){ //使用栈实现括号匹配 int n; cin>>n;//有n行括号要输入 string s;//存放括号 for(int i=0;i<n;i++){ &n...
My_opt
2022年4月26日 12:49
c++ 短代码
P1067
回复 0
|
赞 4
|
浏览 7.0k
#include <iostream> #include <stack> #include <unordered_map> using namespace std; int n; string op; stack<char> stk; unordered_map<char, int> h = {{'{', 1}, {'[', 2}, {'(', 3}, {'<',4}, {'}', -1}, {']', -2}, {')', -3}, {'>',-4}}; int ma...
tuesdasy
2022年3月6日 13:12
括号匹配问题(注意多组输入,栈内清空)
P1067
回复 0
|
赞 1
|
浏览 7.2k
新手 #include <iostream> using namespace std; #include <string.h> #include <stack> char s[260]; stack <char> st; int main () { int n; scanf ("%d", &n); for (int j = 0; j < n; j++) { int flag = 0;//标记 scanf ("%s", s); int len = strle...
Dear_Mr_He
2022年2月3日 14:27
栈的应用——带优先级的括号匹配问题
P1067
回复 0
|
赞 5
|
浏览 7.7k
题目解析:用栈模拟即可,首先判断括号优先级,若判断错误则直接输出 NO,否则判断括号是否均配对,栈顶元素匹配就说明配对成功,将栈顶元素出栈,否则配对不成功,就将当前元素入栈。最后查看栈是否为空,若为空则是 YES,否则就是 NO。 #include<iostream> #include<cstring> #include<stack> using namespace std; int main() { int n; char s[256]; scanf("%d", &n); for (int...
zjx140
2021年9月10日 12:39
(C++) 优先级与字符都用栈,用map存储符号的优先级
P1067
回复 0
|
赞 0
|
浏览 7.4k
#include<iostream> #include<stack> #include<string> #include<map> using namespace std; int main(){ int n; map<char,int> m; m['{'] = 4; m['['] = 3;  ...
gekelh
2021年8月2日 18:44
很明显用栈,但是小菜鸡使用不熟练用的switch实现
P1067
回复 0
|
赞 3
|
浏览 8.9k
该方法比较好理解: // 题意描述: 在算术表达式中,除了加、减、乘、除等运算外,往往还有括号。 // 包括有大括号{},中括号[],小括号(),尖括号<>等。 对于每一对括号,必须先左边括号,然后右边括号; // 如果有多个括号,则每种类型的左括号和右括号的个数必须相等;对于多重括号的情形,按运算规则, // 从外到内的括号嵌套顺序为:大括号->中括号->小括号->尖括号。 // 例如,{[()]},{()},{{}}为一个合法的表达式,而([{}]),{([])},[{<>}]都是非法的。 #include<bits...
LVBU123
2021年3月23日 00:31
应该是最简洁的代码
P1067
回复 0
|
赞 2
|
浏览 9.6k
#include<bits/stdc++.h> using namespace std; int val[127]; int n; int main() { val['<'] = 1; val['('] = 2; val['['] = 3; val['{'] = 4;//定义括号优先级 cin >> n; while (n--) { stack <char> st;//定义栈 string s; cin >> s; ...
杨德胜
2021年3月16日 14:02
P1067 解题思路分享
P1067
回复 0
|
赞 0
|
浏览 7.7k
#include <bits/stdc++.h> using namespace std; int main() { map<char,int> m; m['<']=0,m['(']=1,m['[']=2,m['{']=3; int n; cin>>n; while(n--){ char s[260]; cin>>s; stack<char> st; for(int i=0; i<strlen(s); i++){ if(!st.empty()){ ...
吴二胖
2021年3月13日 20:35
利用map将括号的优先级表示出来
P1067
回复 0
|
赞 0
|
浏览 8.6k
#include<bits/stdc++.h> using namespace std; bool bracketCheck(char str[]) { int length=strlen(str); stack<char> s; map <char ,int> t; //定义map 通过值来直观比较优先级 t['{']=4; t['[']=3; t['(']=2; t['<']=1; for(int i=0;i<length;i++) ...
1
2
3
4
题目
括号的匹配
题解数量
36
发布题解
在线答疑
热门题解
1
括号的匹配 题解:c++ stl中的stack容器和map容器实现。
2
再定义一个优先级栈,出栈的时候判断
3
题目坑点
4
括号的匹配 题解:
5
括号的匹配 题解:左压右出,四种错误情况
6
括号的匹配 题解:用栈解决
7
括号的匹配 题解:利用map来控制优先级
8
括号的匹配 题解:111
9
括号的匹配 题解:想问一下大佬为什么只能过20%
10
括号的匹配 题解:新手方法简单易懂