UV 442 Matrix Chain Multiplication——思路题
来源:互联网 发布:pdf.js如何使用 编辑:程序博客网 时间:2024/05/01 01:56
#include <iostream>#include <cstdio>#include <cstring>#include <stack>#include <cctype>using namespace std;struct matrix{ int a, b; matrix(int x = 0, int y = 0){//构造函数初始化a、b a = x, b = y; }}m[26];int main(){ stack<matrix> s; int n; scanf("%d", &n); for (int i = 0; i < n; i++) { char ch; getchar();//每次都接收一个换行 ch = getchar(); int temp = ch - 'A'; scanf("%d %d", &m[temp].a, &m[temp].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;}
1 0
- UV 442 Matrix Chain Multiplication——思路题
- 442 - Matrix Chain Multiplication***
- 442 - Matrix Chain Multiplication
- 442 - Matrix Chain Multiplication
- 442 - Matrix Chain Multiplication
- 442 - Matrix Chain Multiplication
- 442 - Matrix Chain Multiplication
- 442 - Matrix Chain Multiplication
- 442 - Matrix Chain Multiplication
- 442 - Matrix Chain Multiplication
- Problem 039——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
- 在HTML页面中显示html代码
- Android业务组件化之Gradle和Sonatype Nexus搭建私有maven仓库
- 算法训练 s01串
- 蓝桥杯真题——黄金分割数
- Lost connection to MySQL server at ‘reading initial communication packet', system error: 0 mysql远程连接
- UV 442 Matrix Chain Multiplication——思路题
- UVA 11426 欧拉函数 + 递推
- Maven实践(四)---编写测试代码
- 从零搭建Hadoop环境
- springsecurity 登录form添加其他字段(基于java配置)
- Bash’s Big Day_Codeforces
- 重定向和请求转发的区别
- Re:从零开始的实习生活03----Datatables的使用说明
- springsecurity ajax超时返回登录页面