算法入门经典P141(Matrix)
2021/7/19 9:05:08
本文主要是介绍算法入门经典P141(Matrix),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
#include<iostream> #include<stack> #include<string> using namespace std; struct Matrix{ int a,b; Matrix(int a=0,int b=0):a(a),b(b){} }m[26]; stack<Matrix>s; int main(){ int n; cin>>n; for(int i=0;i<n;i++){ string name; cin>>name; int k = name[0]-'A'; cin>>m[k].a>>m[k].b; } string expr; while(cin>>expr){ int len = expr.length(); bool error = false; int ans = 0; for(int i=0;i<len;i++){ if(isalpha(expr[i])){ s.push(m[expr[i]-'A']); } else if(expr[i]==')'){ Matrix m2 = s.top();s.pop(); Matrix m1 = s.top();s.pop(); if(m1.b!=m2.a){ error = true; break; } ans += m1.a*m1.b*m2.b; s.push(Matrix(m1.a,m2.b)); } } if(error)printf("error\n");else printf("%d\n",ans); } return 0; }
这篇关于算法入门经典P141(Matrix)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16使用vue3+springboot构建简单Web应用教程
- 2024-11-15全栈开发项目实战:从入门到初级项目的实现
- 2024-11-15数据库项目实战:从入门到初级应用教程
- 2024-11-15IDEA项目实战入门教程
- 2024-11-15IT编程项目实战:新手入门的全面指南
- 2024-11-15Java开发项目实战:新手入门与初级技巧
- 2024-11-15Java零基础项目实战:从入门到独立开发
- 2024-11-15MyBatis Plus教程:入门与基础操作详解
- 2024-11-15MyBatis-Plus教程:新手入门与实战技巧
- 2024-11-15MyBatis教程:从入门到实践