#B8170. 靶场

靶场

题目描述

靶场上有 nn 块靶排成一排,从左到右依次编号为 1,2,3,,n1,2,3,\cdots,n,且每块靶上都标有一个整数。

当某块靶被击中后,击中者会得到 xyzx * y * z 的积分。(yy 表示被击中的靶上的数,xx 表示其左侧最近且未被击中的靶上的数,zz 表示其右侧最近且未被击中的靶上的数。如果其左侧不存在未被击中的靶,则 xx11;如果其右侧不存在未被击中的靶,则 zz11。)

计算完积分后,这块靶就会退出靶场(不在这排靶中)。

请计算击中所有靶后能得到的最高积分是多少?

例如:n=4n = 4,表示有 44 块靶,这 44 块靶上的数从左到右分别是 32463、2、4、6;

按照下列顺序打靶,可以得到最高积分:

  1. 22 号靶,得到的积分是 24(324)24(3*2*4)
  2. 33 号靶,得到的积分是 72(346)72(3* 4 * 6)
  3. 11 号靶,得到的积分是 18(136)18(1* 3 * 6)
  4. 44 号靶,得到的积分是 6(161)6(1* 6* 1)

最终获得的积分是 12024+72+18+6120(24+72+18+6)

输入格式

第一行输入一个整数 n1n300n(1≤n≤300),表示靶场上靶的数量。 第二行输入 nn 个整数1整数100(1≤整数≤100),分别表示从左到右每块靶上的数,整数之间以一个空格隔开。

输出格式

输出一个整数,表示击中所有靶后能得到的最高积分。

4
3 2 4 6
120

Hint

【数据范围】 对于 20%20\% 的数据,1n101\le n \le 10 对于 100%100\% 的数据,1n3001\le n \le 300