Problem 7F. Node

Problem 7F. Node

Problem 7F. Node

时间限制:1s

空间限制:256MB

Description

给定数字 \(N\) ,代表一个环中结点个数。

每个结点都有头值和尾值,如果前一个结点的尾值 \(t_1\) 等于后一个结点的头值 \(h_2\) ,那么两个结点将可以合并为一个结点,并且新结点的头值 \(h_{new}\) 等于前一个结点的头值 \(h_1\) ,新结点的尾值 \(t_{new}\) 等于后一个结点的尾值 \(t_2\) ,需要花费价值为 \(h_1 \times t_1 \times t_2\) 或 \(h_1 \times h_2 \times t_2\) 。

求解最优合并顺序,使得最终花费价值总和最大。输出最大的值。

Input Format

第一行是一个正整数 \(N\)(\(4 \le N \le 100\)),表示环上结点个数。第二行是 \(N\) 个用空格隔开的正整数,所有的数均不超过 \(1000\)。第 \(i\) 个数为第 \(i\) 个结点的头值(\(1 \le i \le N\)),当 \(i<N\) 时,第 \(i\) 个结点的尾值应该等于第 \(i+1\) 个结点的头值。第 \(N\) 个结点的尾值应该等于第 \(1\) 个结点的头值。

Output Format

一个正整数 \(E\) ,为总和最大的最终花费价值。

Input Example #1:

4
2 3 5 10

Output Example #1:

710

Note

样例中 \(4\) 个结点的头与尾依次为 \((2,3)(3,5)(5,10)(10,2)\)。我们用记号 \(\oplus\) 表示两个结点的合并,\((j \oplus k)\) 表示第 \(j,k\) 两个结点合并后所花费的价值。则第 \(4\),\(1\) 两个结点合并花费的价值:

\((4 \oplus 1)=10 \times 2 \times 3=60\)。

最终可以得到最优值的一个合并顺序所花费的价值为:

\((((4 \oplus 1) \oplus 2) \oplus 3)=10 \times 2 \times 3+10 \times 3 \times 5+10 \times 5 \times 10=710\)。

信息

ID
1555
难度
9
分类
(无)
标签
(无)
递交数
1
已通过
1
通过率
100%
上传者

相关

在下列比赛中:

2023秋 悬赏令第七周