poj-1681【矩阵连乘】
来源:互联网 发布:bqb认证知乎 编辑:程序博客网 时间:2024/05/17 07:43
题意是:给你一序列数,每次抽出一个数字(两端除外),抽取的数乘以旁边两个数作为此次操作的积分,抽到只剩两个数为止。求总积分最小。
题目给的数据:10 1 50 50 20 5
可以看成给了 10*1 1*50 50*50 50*20 20*5这些个矩阵求矩阵连乘最少乘数
#include <stdio.h>#include <string.h>#include <stdlib.h>#define MAX_N 110#define INF 0x3f3f3f3fdint dp[MAX_N][MAX_N];int l[MAX_N];int r[MAX_N];int find_min(int x,int y){return x>y?y:x;}int main(){int n;while(~scanf("%d",&n)){int val;int i,j,k;for(i=0;i<n;i++){scanf("%d",&val);if(i<n-1)l[i]=val;if(i>0)r[i-1]=val;}n-=2;// for(int j=0;j<n-1;j++)// printf("%d %d\n",l[j],r[j]);memset(dp,0x3f,sizeof(dp));for(i=0;i<=n;i++)dp[i][i]=0;for(i=1;i<=n;i++){for(j=0;j<=n-i;j++){for(k=j;k<=j+i-1;k++){dp[j][j+i]=find_min(dp[j][j+i],dp[j][k]+dp[k+1][j+i]+l[j]*r[k]*r[j+i]);}}}printf("%d\n",dp[0][n]);}return 0;}
0 0
- poj-1681【矩阵连乘】
- poj 1651 矩阵连乘
- POJ 3613 Cow Relays [矩阵连乘]
- POJ 3233 矩阵连乘+二分
- POJ 3070 Fibonacci【矩阵连乘】
- poj 3070 Fibonacci(简单矩阵连乘)
- poj 3070 矩阵连乘简单题
- POJ 1651 Multiplication Puzzle (矩阵连乘)
- POJ 1651(矩阵连乘)
- 矩阵连乘
- Strassen矩阵连乘
- 矩阵连乘问题
- 矩阵连乘问题
- 矩阵连乘
- 矩阵连乘
- 矩阵连乘
- 矩阵连乘
- 矩阵连乘问题
- 蓝桥杯基础训练 十六进制转八进制
- C#引用外部DLL报错未能找到类型或命名空间名称(是否缺少using指令后程序集引用)
- ORA-01653: unable to extend table
- 爱在黄昏日落时——Checklists学习日志之在App关闭/进入后台时保存文件
- 阅读笔记
- poj-1681【矩阵连乘】
- 【Linux】VMware安装Linux系统后设置局域网其他电脑也能访问
- 各大热补丁方案分析和比较
- 最新支付宝集成遇到的一些坑。
- TNS-01189 The listener could not authenticate the user
- 内存泄漏从入门到精通三部曲之排查方法篇
- iBatis简单入门教程
- <UIKit/UIKit.h> 继承关系图
- sip路由原理