10344 矩阵连乘积的加括号方式数

题目

给定n个矩阵{A1,…,An},其中Ai和Ai+1可乘,i=1,2,…,n-1。考察矩阵连乘积加括弧的方式数。

如四个矩阵连乘积A1A2A3A4,共有五种不同的加括弧方式:
( A1 ( A2 ( A3 A4 ) ) )
( A1 ( ( A2 A3 ) A4 ) )
( ( A1A2 ) ( A3 A4 ) )
( A1 ( A2 A3 ) A4 )
( ( ( A1 A2 ) A3 ) A4 )

输入示例:
4
输出示例:
5

输入格式

输入矩阵连乘积的个数n(n<=20)。

输出格式

输出矩阵连乘积加括号的方式数。

输入样例

4

输出样例

5

对于n个矩阵的连乘积,设不同的计算次序(就是加括号方式数)为P(n)。假设最后一次括号加在第k个和第k+1个
(k=1…n-1)之间。
则P(n)的递归式如下:

P(n) = 1 if n=1;
P(n) = sum{ P(k)*P(n-k) | for k=1 to n-1 } if n>1

计算P(n)即可。

观察上面的
( A1 ( A2 ( A3 A4 ) ) )
( A1 ( ( A2 A3 ) A4 ) )
( ( A1A2 ) ( A3 A4 ) )
( A1 ( A2 A3 ) A4 )
( ( ( A1 A2 ) A3 ) A4 )
先添加外围的括号,一步步分治。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值