最小矩阵连乘(区间动态规划)

来源:互联网 发布:安卓刷机软件哪个好 编辑:程序博客网 时间:2024/05/16 11:09
#include <iostream>using namespace std;#define maxint 2147483647int main(){ int i,j,m,k,n,t,r,p[105],c[105][105]; while(cin>>n) {  for(i=0;i<=n;i++)  cin>>p[i];  for(j=1;j<=n;j++)  c[j][j]=0;  for(r=1;r<n;r++)  for(i=1;i<=n-r;i++)  {   j=i+r;c[i][j] = maxint;   for(m=i;m<j;m++)   {    t=c[i][m]+c[m+1][j]+p[i-1]*p[m]*p[j];    if(t<c[i][j]) c[i][j]=t;   }  }  cout<<c[1][n]<<endl; } return 0;}