比赛 ZLXOI2015Day1 评测结果 WWWAAAAAAA
题目名称 燃灵之链 最终得分 70
用户昵称 ~Love Star 运行时间 0.080 s
代码语言 C++ 内存使用 0.40 MiB
提交时间 2015-10-29 11:02:33
显示代码纯文本
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=10005;
const int inf=1e9;
int n,k;
int sum[maxn];
int f[2][maxn];
int main()
{
	freopen("KPengshuangcang.in","r",stdin);
	freopen("KPengshuangcang.out","w",stdout);
	scanf("%d%d",&n,&k);
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&sum[i]);
		sum[i]+=sum[i-1];
	}
	for(int i=1;i<=k;i++)
	{
		int maxf=f[(i-1)&1][i-1]-sum[i-1];
		f[i&1][i-1]=-inf;
		for(int j=i;j<=n;j++)
		{
			f[i&1][j]=maxf+sum[j];
			if(f[i&1][j-1]>f[i&1][j]) f[i&1][j]=f[i&1][j-1];
			if(f[(i-1)&1][j]-sum[j]>maxf) maxf=f[(i-1)&1][j]-sum[j];
		}
	}
	printf("%d",f[k&1][n]);
	return 0;
}