C3-C 矩阵连乘

题目描述

nn个矩阵连乘,求有多少种乘法P(n)P(n)

输入

一个正整数nn,表示矩阵个数,1n351≤n≤35

输出

$1∼n $个矩阵连乘,分别有多少种乘法。

题目分析

nn个矩阵分为两部分i,nii,n-i则:

P(n)=P(i)P(ni)P(n)=\sum P(i)*P(n-i)

示例代码

1
2
3
4
5
6
7
8
9
dp[1]=1;
dp[2]=1;
for (int i = 3; i <= n; i++)
{
for (int j = 1; j <= i; j++)
{
dp[i] += dp[j] * dp[i - j];
}
}