HDU1024 多段最大和 DP
2024-08-25 11:43:44
题目大意:
在n个数,求不重复的m段中的数据总和的最大值
令dp[i][j]表示将前j个数分成 i 段时得到的最大值(必取到第 j 个数)
状态转移可列为 dp[i][j]=Max(dp[i][j-1]+a[j] , Max( dp[i-1][k] ) + a[j] ) 0<k<j
#include <cstdio>
#include <cstring>
#include <string>
#include <iostream>
using namespace std; const int N = ;
int a[N] , dp[N] , ans[N]; int main()
{
int n , m;
while(scanf("%d%d" , &m , &n) == )
{
memset(dp , , sizeof(dp));
memset(ans , , sizeof(ans));
for(int i= ; i<=n ; i++){
scanf("%d" , a+i);
}
int maxn = -0x7fffffff;
for(int i= ; i<=m ; i++){
maxn = -0x7fffffff;
for(int j=i ; j<=n ; j++){
dp[j] = max(dp[j-] + a[j] , ans[j-] + a[j]);
ans[j-] = maxn;
maxn = max(dp[j] , maxn);
}
}
printf("%d\n" , maxn);
}
return ;
}
最新文章
- RabbitMQ基本概念和使用
- sc7731 Android 5.1 LCD驱动简明笔记之一
- asp.net正则表达式过滤标签和数据提取
- 一步步搭建自己的轻量级MVCphp框架-(一)什么是PHP框架以及MVC设计模式
- vs在winform中不给力哈-错误不提示
- 如何为你的初创应用App开发公司建立战略计划(商业战略竞争五力学)
- Spring实现无需注解实现自动注入
- excel2003和excel2007文件的创建和读取
- Jmeter(六)_前置处理器
- SSIS 调试和故障排除
- Houdini技术体系 基础管线(四) :Houdini驱动的UE4植被系统 下篇
- U盘复制文件到最后5秒会卡住怎么办解决
- 【原创】DOTNET动态调试破解Spoon,及MSI安装包文件替换技术
- yum install mysql56
- No matter how hard it is or no matter how bad it gets, I am going to make it!
- 1001. A+B Format (20)题解
- vue-cli配置axios
- Acer宏碁暗影骑士3进阶版无法进入系统引导修复
- 仅100行的JavaScript DOM操作类库
- VC++中动态链接库的显示加载和隐式加载的区别