2858 Treats for the Cows
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
int f[2005][2005];
int a[2005];
int main()
{
int n,l,i,j;
cin>>n;
for(i=1;i<=n;i++)
{
cin>>a[i];
f[i][i]=a[i]*n;
}
for(l=2;l<=n;l++)//枚举区间长度
{
for(i=1;(i+l-1)<=n;i++)//枚举起点
{
j=i+l-1;//枚举终点
dp[i][j]=max(dp[i+1][j]+a[i]*(n-l+1),dp[i][j-1]+a[j]*(n-l+1));//计算两个区间的零食
}
}
cout<<dp[1][n]<<endl;
return 0;
}