比赛 EYOI常规赛 2nd 评测结果 AAAAAAAAAA
题目名称 特殊津贴 最终得分 100
用户昵称 ZRQ 运行时间 0.202 s
代码语言 C++ 内存使用 14.75 MiB
提交时间 2021-12-16 19:18:37
显示代码纯文本
#include<iostream> 
#include<cstdio>
using namespace std;
int n,f[2005][2005];
char ch;
inline void read(int &x){x=0;ch=getchar();while(ch<48||ch>57) ch=getchar();while(ch>47&&ch<58) x=(x<<3)+(x<<1)+(ch^48),ch=getchar();}
int main()
{
	freopen("treats.in","r",stdin); freopen("treats.out","w",stdout);
	read(n);
	for(int i=1;i<=n;++i) read(f[i][i-1]),f[i][i]=f[i][i-1]*n;
	for(int i=1;i<n;++i) for(int j=1;j<=n-i;++j) f[j][j+i]=max(f[j][j+i],max(f[j][j+i-1]+f[j+i][j+i-1]*(n-i),f[j+1][j+i]+f[j][j-1]*(n-i)));
	printf("%d\n",f[1][n]);
	return 0;
}