关于个人工作室网站模板,大连做网站谁家好,网上编程培训哪家好,有哪些网站免费做推广题目链接#xff1a;https://vjudge.net/problem/UVA-442
题目分析
题目的意思非常简单#xff0c;就是给定一个矩阵乘法的表达式然后计算就可以了。随便写写
AC代码
#include iostream
#include deque
#include vector
#include string…题目链接https://vjudge.net/problem/UVA-442
题目分析
题目的意思非常简单就是给定一个矩阵乘法的表达式然后计算就可以了。随便写写
AC代码
#include iostream
#include deque
#include vector
#include string
#include unordered_mapusing namespace std;int ans;class Matrix {int row, colum;
public:Matrix(int _row, int _colum) : row(_row), colum(_colum) {}friend Matrix operator * (const Matrix lhs, const Matrix rhs);
};Matrix operator * (const Matrix lhs, const Matrix rhs) {if (lhs.colum ! rhs.row) {ans -1;return Matrix(0, 0);}ans lhs.row * lhs.colum * rhs.colum;return Matrix(lhs.row, rhs.colum);
}int n;
unordered_mapchar, Matrix matrixs;
dequeMatrix s;int main() {ios::sync_with_stdio(false);cin n;int row, colum;string var;for (int i 0; i n; i) {cin var row colum;matrixs.insert({var[0], Matrix(row, colum)});}while (cin var) {ans 0;s.clear();bool error false;for (auto c : var) {if (c () {} else if (c )) {Matrix a s.back();s.pop_back();Matrix b s.back();s.pop_back();//需要注意是b * as.push_back(b * a);if (ans -1) {error true;break;}} else {s.push_back(matrixs.at(c));}}if (error) {cout error\n;} else {cout ans \n;}}return 0;
}