UVA-442数据结构调用栈,注意括号的处理
来源:互联网 发布:北京110网络报警平台 编辑:程序博客网 时间:2024/05/29 18:26
此处一定要注意当遇到后括号的时候就计算,因为一对括号中至多包含两个矩阵,及时去掉括号,还是看了clevermike的博客后才弄懂的
#include<iostream>#include<string>#include<stdio.h>#include<stack>using namespace std;int n;struct Node{ int l,r;}node[300];char ch;int a,b,ans,t,i;string str;stack<int>s1;stack<char>s2;int main(){ cin>>n; while(n--) { cin>>ch>>a>>b; node[ch-'A'].l=a;node[ch-'A'].r=b; } getchar(); while(getline(cin,str)) { ans=0;t=31; int len=str.length(); for( i=0;i<len;i++) { if(str[i]=='('||str[i]==')') { s2.push(str[i]); if(str[i]==')') { if(!s1.empty()) { int g,h; h=s1.top();s1.pop(); g=s1.top();s1.pop(); if(node[g].r!=node[h].l)break; ans+=node[g].l*node[g].r*node[h].r; node[t].l=node[g].l; node[t].r=node[h].r; s1.push(t); t++; s2.pop();s2.pop(); } } } else s1.push(str[i]-'A'); } if(i<len)cout<<"error"<<endl; else cout<<ans<<endl; }}
0 0
- UVA-442数据结构调用栈,注意括号的处理
- 栈括号的处理
- uva-673 平衡的括号,栈模拟
- 数据结构 栈 无括号算术表达式处理算法 C语言版
- 数据结构栈的应用之括号匹配
- 数据结构之 栈的应用 括号匹配
- 数据结构 栈的应用 括号匹配
- 【数据结构】栈的应用 括号匹配
- 栈的应用-括号匹配-数据结构
- 数据结构,栈,括号配对
- 数据结构-栈-括号匹配
- 第六周--数据结构--数据结构之括号的匹配(栈)
- 平衡的括号Uva-673
- uva 673 平衡的括号
- Uva 673 平衡的括号——栈的操作
- UVA-673 括号匹配--栈
- 【数据结构】栈的应用--括号的匹配(c++)
- 数据结构 P49 栈的应用举例-括号匹配的检验
- Android 瀑布流布局
- Linux中Shell变量$#,$@,$0,$1,$2,$*,$$,$?的含义
- jquery实现人物简单走动
- 关于数组
- course3 二分
- UVA-442数据结构调用栈,注意括号的处理
- android canvas drawText \r\n 换行
- 学生信息管理系统 输入和输出 链表
- 设置窗口客户区大小的方法
- java 大数运算 BinInteger
- android 禁止横竖屏切换时activity重新启动
- 对ExecuteNonQuery,ExecuteScalar,DataSet 进行封装(params可变参数的用法)Sqlparameter
- ubuntu 下串口调试安装(gtkterm)
- 【c++系列】typeid操作符(判断类型是否相同)