记录编号 575447 评测结果 AAAAAAAAAA
题目名称 白色谎言 最终得分 100
用户昵称 Gravatar该账号已注销 是否通过 通过
代码语言 C++ 运行时间 0.542 s
提交时间 2022-09-14 22:01:12 内存使用 5.41 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int m,n,a[1010];
long long dp[1010][1010];
long long ans;
long long mx;
int main(){
    freopen("white_lies.in","r",stdin);
    freopen("white_lies.out","w",stdout);
    while(scanf("%d%d",&m,&n)!=EOF){
        ans=-0x3f3f3f3f;
        for(int i=1;i<=n;i++){
            scanf("%d",&a[i]);
        }
        for(int i=0;i<=n;i++)dp[0][i]=dp[i][0]=0;
        for(int i=1;i<=m;i++){
            mx=-0x3f3f3f3f;
            dp[i][i-1]=-0x3f3f3f3f;
            for(int j=i;j<=n-m+i;j++){
                mx=max(dp[i-1][j-1],mx);
                dp[i][j]=max(mx+a[j],dp[i][j-1]+a[j]);
            }
        }
        for(int i=m;i<=n;i++){
            ans=max(ans,dp[m][i]);
        }
        printf("%lld\n",ans);
    }
    return 0;
}