资源简介
矩阵链乘问题
输入:
共两行
第一行 N ( 1<=N<=100 ),代表矩阵个数。
第二行有 N+1 个数,分别为 A1 、 A2 ...... An+1 ( 1<=Ak<=2000), Ak 和 Ak+1 代表第 k 个矩阵是个 Ak X Ak+1 形的。
输出:
共两行
第一行 M ,为最优代价。注:测试用例中 M 值保证小于 2^31
第二行为最优顺序。如 (A1((A2A3)A4)) ,最外层也加括号。
注意:测试用例已经保证了输出结果唯一,所以没有AAA的情况.
代码片段和文件信息
#include
#include
#include
int min[200][200]pos[200][200];
int main()
{
int ijktna[200]p;
void PRINT(int iint j);
scanf(“%d“&n);
for(i=0;i<=n;i++)
{
scanf(“%d“&a[i]);
}
if(n==1)
{
printf(“0\n“);
printf(“(A1)\n“);
return 0;
}
for(i=1;i<=n;i++)
{ min[i][i]=0;
pos[i][i]=0; }
for(p=1;p { for(i=1;i<=(n-p);i++)
{ j=i+p;
- 上一篇:一元多项式表示及相加
- 下一篇:远程视频视频监控源程序C++实现
评论
共有 条评论