UVa - 442 - Matrix Chain Multiplication(用栈实现简单的表达式解析)
来源:互联网 发布:小姐威客信息网 源码 编辑:程序博客网 时间:2024/05/20 01:11
#include<cctype>#include<cstdio>#include<string>#include<iostream> #include<stack>using namespace std;struct Matrix{int a,b;//Matrix(int a=0,int b=0):a(a),b(b){}//Matrix(int a,int b){//this.a=a;//this.b=b;//}}m[26];int main(){//freopen("input.txt","r",stdin);int n;string s;stack<Matrix>st;cin>>n;while(n--){cin>>s;int k = s[0]-'A';cin>>m[k].a>>m[k].b;}while(cin>>s){int len = s.length();int ans = 0;int error = 0;for(int i=0 ;i<len ;i++){if(isalpha(s[i])){st.push(m[s[i]-'A']);}if(s[i]==')'){Matrix m2 = st.top();st.pop();Matrix m1 = st.top();st.pop();//Matrix m3 = Matrix(m1.a,m2.b);Matrix m3;m3.a=m1.a;m3.b=m2.b;if(m1.b!=m2.a){error=1;break;}st.push(m3);ans += m1.a*m1.b*m2.b;}}if(error)printf("error\n");elseprintf("%d\n",ans);}return 0;}
0 0
- UVa - 442 - Matrix Chain Multiplication(用栈实现简单的表达式解析)
- Matrix Chain Multiplication -uva简单的数据结构
- Matrix Chain Multiplication UVA 442(栈+表达式求值)
- Uva 442 - Matrix Chain Multiplication//栈
- Uva 442 Matrix Chain Multiplication 栈
- UVA - 442 Matrix Chain Multiplication(栈)
- UVa 442 Matrix Chain Multiplication(栈)
- UVa - 442 Matrix Chain Multiplication(栈模拟)
- UVA 442 Matrix Chain Multiplication(栈)
- UVa 442 Matrix Chain Multiplication 栈
- UVA 442-Matrix Chain Multiplication(栈的运用)
- 【栈 && 矩阵的知识】UVA 442 Matrix Chain Multiplication
- UVa 442 Matrix Chain Multiplication
- Uva 442 Matrix Chain Multiplication
- UVa 442 Matrix Chain Multiplication
- uva 442 - Matrix Chain Multiplication
- UVa 442 - Matrix Chain Multiplication
- UVa 442 - Matrix Chain Multiplication
- [知识点滴]关于CSS Reset 那些事(一)
- C语言 猜数字游戏
- SQL中Group By的使用
- 第四周项目5——循环双链表应用
- HDU1800-Flying to the Mars
- UVa - 442 - Matrix Chain Multiplication(用栈实现简单的表达式解析)
- 剑指Offer面试题41:求和为s的两个数字;求和为s的连续正数序列 Java实现
- OpenCV 鼠标、滑动条交互式操作
- 从0-1背包问题学习回溯法、分支界限法、动态规划
- Express 错误,请求数据太大,Payload Too Large
- 软件概要说明书
- nginx环境支持thinkphp的pathinfo模式
- Android 编码规范
- SHELL编程