蓝桥杯复训之区间dp

题目链接:https://www.acwing.com/problem/content/1390/

思路:对区间进行动态规划,f[i][j]代表从区间i到j的先手所能拿到的最大值
 

#include<bits/stdc++.h>
using namespace std;
const int N=105;

int fg[N][N];

int main(){
    int n;cin>>n;
    vector<int>a(n+1);
    int sum[N]={ };
    for(int i=1;i<=n;i++){
        cin>>a[i];
        sum[i]=sum[i-1]+a[i];
        fg[i][i]=a[i];
    }
    
    
    for(int len=2;len<=n;len++){
        for(int i=1;i<=n-len+1;i++){
            int j=i+len-1;
            //先手所能拿到的最大值是当前这一段总值减去后手最大值
            fg[i][j]=max(sum[j]-sum[i-1]-fg[i+1][j],sum[j]-sum[i-1]-fg[i][j-1]);
        }
    }
    cout<<fg[1][n]<<' '<<sum[n]-fg[1][n]<<'\n';
}

相关推荐

  1. 复训区间dp

    2024-04-05 04:14:04       20 阅读
  2. 2024每日一题(区间DP

    2024-04-05 04:14:04       17 阅读
  3. 积木画 (dp

    2024-04-05 04:14:04       24 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-05 04:14:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-05 04:14:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-05 04:14:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-05 04:14:04       20 阅读

热门阅读

  1. vector

    vector

    2024-04-05 04:14:04      19 阅读
  2. Redis 和 Memcached 之间有什么优点或缺点吗?

    2024-04-05 04:14:04       23 阅读
  3. 【前端开发】教程及案例.docx

    2024-04-05 04:14:04       21 阅读
  4. Go语言中如何正确使用getter和setter

    2024-04-05 04:14:04       18 阅读
  5. LeetCode //C - 981. Time Based Key-Value Store

    2024-04-05 04:14:04       21 阅读
  6. 【无标题】html中使用div标签的坏处

    2024-04-05 04:14:04       16 阅读
  7. 【积累】mysql

    2024-04-05 04:14:04       19 阅读
  8. mysql常见故障

    2024-04-05 04:14:04       24 阅读
  9. 4.2总结

    4.2总结

    2024-04-05 04:14:04      16 阅读
  10. 【leetcode面试经典150题】10.跳跃游戏 II(C++)

    2024-04-05 04:14:04       19 阅读
  11. 搭建本地YUM仓库

    2024-04-05 04:14:04       18 阅读
  12. C# OpenFileDialog

    2024-04-05 04:14:04       19 阅读