E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
hdu1024
hdu1024
Max Sum Plus Plus(最大子段和加强版)
关键字:dp滚动数组题意:输入n,m表示一排n个数,求m个不相交的子段,他们和最大。思路:果断dp啊,最大子段和的变形,联想最大子段和的dp[i]设以当前i为结尾的子段和最大的结果,这里设dp[i][j]为以j结尾构成了i段不相交子段和的最大结果。我们就要思考当前dp[i][j]是由那些状态转移过来?思考这里对于每个数字,我们的策略是要么选择他作为当前这段的,要么让它单独成段(对于这一段不一定要选
So_weak_yx
·
2020-09-17 14:09
动态规划基础dp
HDU1024
题解(DP)
HDU1024
:题意:把n个数分出m个区间,使得区间和最大。思路:DP。状态:dp[i][j]表示把前j个数组分成i组的区间和。
KKKyot_
·
2020-09-17 12:11
题解
【题解】
hdu1024
线性DP
题目链接//dp[j]表示j在当前子序列的最优值,mk[j]表示上个子序列中1~j的dp的最大值#include#include#include#defineINF0x3f3f3f3fusingnamespacestd;constintN=1e6+10;intdp[N],mk[N],num[N];intmain(){//freopen("in.txt","r",stdin);intm,n,i,j,
不进清北不改名
·
2020-09-17 12:44
线性DP
hdu
hdu1024
(基本dp)
/*translation:给出一串数列,求m个不相交的段最大的和是多少?solution:基本dp。设dp[i][j]表示前j个数划分成i段,所得到的最优解。对于第j个数,有两种决策,一种是单独成立成一个段。另一种是和地i个段组成一段。所以有转移方程如下:dp[i][j]=max{dp[i][j-1],max{dp[i-1][k]}}+a[i]。其中k>=1&&k#include#include
林伏案
·
2020-09-17 10:14
=====动态规划=====
基本dp
HDU1024
这压缩真先进...先进的我想跳河
DescriptionNowIthinkyouhavegotanACinIgnatius.L’s“MaxSum”problem.TobeabraveACMer,wealwayschallengeourselvestomoredifficultproblems.Nowyouarefacedwithamoredifficultproblem.Givenaconsecutivenumbersequenc
NineFailure
·
2020-09-11 00:53
ACM练习
动态规划
HDU1024
Max Sum Plus Plus(DP动态规划 最大子串和增强版)
MaxSumPlusPlusTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):20708AcceptedSubmission(s):6886ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L's"MaxSum"pr
MiniSheep_CS
·
2020-08-24 23:35
动态规划
杭电(hdu)OJ题目
Max Sum Plus Plus 【HDU 1024】
题目连接
HDU1024
大概题意有n个数字组成的一个数组,让你从中找出m个不相交子序列(要求连续),使这m个子序列的和最大。
147sq
·
2020-08-24 22:50
#
简单DP
hdu1024
(动态规划+滚动数组优化)
把一个数组分成m段,sum(i1,j1)+sum(i2,j2)+sum(i3,j3)+…+sum(im,jm),求使得上述和最大,ik,jk是连续的jk和ik+1可以不连续动态规划,d[i][j]表示在选取第j个数字的情况下,将前j个数字分成i组的最大和,则它的值有两种可能①(x1,y1),(x2,y2)…(xi,yi,num[j])②(x1,y1),(x2,y2)…(xi-1,yi-1),…,(
弋墨尘
·
2020-08-23 21:17
DP专题
hdu1024
(动态规划+滚动数组优化)
把一个数组分成m段,sum(i1,j1)+sum(i2,j2)+sum(i3,j3)+...+sum(im,jm),求使得上述和最大,ik,jk是连续的jk和ik+1可以不连续动态规划,d[i][j]表示在选取第j个数字的情况下,将前j个数字分成i组的最大和,则它的值有两种可能①(x1,y1),(x2,y2)...(xi,yi,num[j])②(x1,y1),(x2,y2)...(xi-1,yi-
pmt123456
·
2020-08-23 02:20
DP
简单dp之——m段子序列的最大和
题目:
hdu1024
题意:m:分成m段。n:数组长度。
Sleppypot
·
2020-08-13 12:11
简单dp
A - Max Sum Plus Plus
HDU1024
( 动态规划 多段连续子段和的最大值)
A-MaxSumPlusPlusTimeLimit:1000MSMemoryLimit:32768KB64bitIOFormat:%I64d&%I64uSubmitStatusDescriptionNowIthinkyouhavegotanACinIgnatius.L's"MaxSum"problem.TobeabraveACMer,wealwayschallengeourselvestomore
_pkm_
·
2020-08-10 22:05
dp
HDU1024
Max Sum Plus Plus(最大字段和)
ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L’s“MaxSum”problem.TobeabraveACMer,wealwayschallengeourselvestomoredifficultproblems.Nowyouarefacedwithamoredifficultproblem.Givenaconsecutivenumber
Andy01.
·
2020-08-10 18:09
dp
HDU1024
(Max Sum Plus Plus)
链接:https://vjudge.net/problem/HDU-1024思路:强迫自己全程写不看题解,结果中间因为初始化wa了一次,状态转移没考虑完全又wa了一次。希望以后能够把这些细节全部考虑完全吧。一开始觉得有点难因为m没给范围,想了想怎么都避不开O(nm)的复杂度,那猜了一下O(nm)可能可以过,空间的话我们可以滚动数组优化,考虑描述状态,dp[i][j][k]表示选了i个数(j=0表示
kimoyami
·
2018-11-05 23:26
hdu1024
Max Sum Plus Plus
题意:给定一个数组,求其分成m个不相交子段和最大值。思路:dp[i][j]表示数组前j个数分成i段的话的最大值,状态的转移如下:dp[i][j]=max(dp[i][j-1],dp[i-1][k])+a[j],考虑到这里的数组最大为1e7,所以只是一般的写二维数组肯定爆的,于是采用滚动数组,就是每一个j记录前一次状态的最大值,具体的过程看了代码就懂了。代码:#include#include#inc
Egqawkq
·
2017-09-30 19:23
DP
DP
hdu1024
求n个数分成k段的最大子序列和
题目链接点击打开链接给你n个数,求分成m个子序列的最大和先贴别人的代码,我看不懂,之后再理解理解/*状态dp[i][j]有前j个数,组成i组的和的最大值。决策:第j个数,是在第包含在第i组里面,还是自己独立成组。方程dp[i][j]=Max(dp[i][j-1]+a[j],max(dp[i-1][k])+a[j])0#include#includeusingnamespacestd;#define
Alberttttt
·
2017-08-24 22:26
DP
最大m子段和总结与例题 51nod1052
HDU1024
最大m子段和一、定义给定由n个整数(可能为负)组成的序列a1、a2、a3...,an,以及一个正整数m,要求确定序列的m个不相交子段,使这m个子段的总和最大!特别注意:有些题目可能不存在负数答案,给出的序列全是负数,那么不管m是多少,答案是0。此时选择的子段是0个,不足m个,但符合题意。。。也可能有些题目要求,必须选够m个子段。区别在dp数组的初始化。前者要求dp初始为0,后者要求第0行为0,其余
winter2121
·
2017-06-02 23:13
ACM**动态规划**
hdu1024
(m段子段和最大)
链接:点击打开链接题意:n个数分成m段不相交子段和最大代码:#include #include #include #include #include usingnamespacestd; constintINF=0x3f3f3f3f; inta[1000005],sum[1000005]; intdp[2][1000005][2]; intmain(){//因为是分成m段,因此和
stay_accept
·
2016-05-08 10:00
源码
动态规划
ACM
hdu1024
Max Sum Plus Plus(最大子段和加强版)
关键字:dp 滚动数组题意:输入n,m表示一排n个数,求m个不相交的子段,他们和最大。思路:果断dp啊,最大子段和的变形,联想最大子段和的dp[i]设以当前i为结尾的子段和最大的结果,这里设dp[i][j]为以j结尾构成了i段不相交子段和的最大结果。我们就要思考当前dp[i][j]是由那些状态转移过来?思考这里对于每个数字,我们的策略是要么选择他作为当前这段的,要么让它单独成段(对于这一段不一定要
yexiaohhjk
·
2016-01-24 19:00
最大m子段和
HDU1024
MaxSumPlusPlusTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):22126 AcceptedSubmission(s):7423ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L's"M
longshanxiaoxuesheng
·
2016-01-18 11:00
hdu1024
Max Sum Plus Plus
MaxSumPlusPlusTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):21752 AcceptedSubmission(s):7282ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L's"M
Kirito_Acmer
·
2015-12-04 09:00
dp
AHU 501 送钱活动
id=501 和
hdu1024
一模一样,随便改改就过了。。。
·
2015-11-12 18:07
活动
HDU1024
解题报告
HDU 1024题目是一道经典的DP问题,它的基础问题是HDU 1003。问题描述大致为:给定输入n,m和数组,然后把长度为n的数组划分成互不交叉的m个子段,要求输出m个子段和的最大值。 DP问题的关键是分析题目要求,写出递归公式。数组为a[](本文中数组下标从1开始计数),把长度为i的数组划分成j段,各段的和用函数f(i,j)表示,且a[i]包含在j段中的某一段。要求出f(i,j),就
·
2015-11-08 14:52
HDU
【
hdu1024
】简单dp
http://acm.hdu.edu.cn/showproblem.php?pid=1024 最大m字段和,题目就不多说了,经典dp 这题坑爹。。。首先不说明m的范围(n<=1000000),还以为有O(n)的算法,吓得不敢做。其次,按照题目给的范围完全可能超int,但是数据事实上int远远够了,害得我__int64读比读int慢两倍,直接TLE。就是因为TLE的原因,害得我数组初始化没有
·
2015-11-06 07:36
HDU
HDU1024
——DP——Max Sum Plus Plus
Problem Description Now I think you have got an AC in Ignatius.L's "Max Sum" problem. To be a brave ACMer, we always challenge ourselves to more difficult problems. Now you are faced with
·
2015-10-31 15:49
HDU
hdu1024
Max Sum Plus Plus
Max Sum Plus Plus Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 13233 Accepted Submission(s): 436
·
2015-10-31 09:43
HDU
HDU1024
Max Sum Plus Plus(DP)
状态:d(i,j)它代表前j划分数i部并且包括第一j最佳结果时的数。g(i,j)表示前j划分数i最好的结果时,段,g(m,n)结果,需要。 本题数据较大。需採用滚动数组。注意:这题int类型就够用了,开long long可能会TLE。 用滚动数组后,g[j]表示分成i段时最优结果,最后求出的g[n]即为结果 #include<iostream> #include<c
·
2015-10-31 09:30
HDU
HDU1024
多段最大和 DP
题目大意: 在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 1 #include <cstdio> 2
·
2015-10-30 14:01
HDU
hdu1024
N! (数组模拟乘法过程)
N!TimeLimit:10000/5000MS(Java/Others) MemoryLimit:262144/262144K(Java/Others)TotalSubmission(s):65655 AcceptedSubmission(s):18807ProblemDescriptionGivenanintegerN(0≤N≤10000),yourtaskistocalculat
su20145104009
·
2015-08-06 20:00
HDU
1042
hdu1024
kuangbin带你飞 专题十二 基础DP1
好久没做DP了,虽说是基础DP1吧,第一题就把我海虐了感觉DP真是看脑洞,最近脑子各种混乱睡眠也不足,还是得要好好理解的
HDU1024
题意:最大m段区间和啊题解:这题正常的方法都会MLE啊TLE啊dp[
Miracle_ma
·
2015-07-31 16:00
ACM
hdu1024
dp+滚动数组
一般思路i:划分为I端,j:前就个数dp[i][j]=max(dp[i][j-1],dp[i-1][k])+a[j];超时+空间#include #include #include #defineMAX100+5 #defineINF-2100000000 usingnamespacestd; intdp[MAX][MAX]; intmain() { freopen("t.txt","r",std
pmt123456
·
2015-06-17 15:00
dp
hdu1024
Max Sum Plus Plus
MaxSumPlusPlusTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):18131 AcceptedSubmission(s):5931ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L's"M
Lionel_D
·
2015-02-07 21:00
dp
动态规划
SUM
max
Plus
Plus
hdu1024
HDU1024
Max Sum Plus Plus 最大子段和(动态规划)
题目大意:给定一个序列,让求该序列的m段互不重叠的子序列和的最大和;可以说是POJ2479的升级版了。我们可以用一个二维数组dp(i,j)来表示该序列由前j个元素中的i个互不重叠的子序列和的最大和,dp(i,j)=max(dp(i,j-1),max(dp(i-1,k)))+ans(j),其中k=1,2,3......j-1;其实max(dp(i,k))就是前一个状态的dp()的最大值,我们可以在计
AC_Gibson
·
2014-12-05 20:00
hdu1024
#include #include #include #definemaxn1000005 #defineINF99999999 usingnamespacestd; inta[maxn],dp[maxn],dp_max[maxn]; intn,m; intmain() { while(scanf("%d%d",&m,&n)!=EOF) { for(inti=1;i=1;j--) { if(i>=
qq415200973
·
2013-10-03 10:00
hdu1024
#include #include #include #include #include #include #include #include #include #defineINF99999999 usingnamespacestd; constintMAX=1000001; int*s,*present,*prior; //present代表前j个数且包括第j个数的i段子序列最大和,prio
xingyeyongheng
·
2013-08-09 21:00
【HDU 1024】 Max Sum Plus Plus
【
HDU1024
】MaxSumPlusPlus转自:http://blog.acmol.com/%E3%80%90hdu-1024%E3%80%91-max-sum-plus-plus.acmol博主写的太好了
lsh670660992
·
2013-07-30 20:00
动态规划
滚动数组
【HDU 1024】 Max Sum Plus Plus
【
HDU1024
】MaxSumPlusPlus转自:http://blog.acmol.com/%E3%80%90hdu-1024%E3%80%91-max-sum-plus-plus.acmol博主写的太好了
lsh670660992
·
2013-07-30 20:00
动态规划
滚动数组
hdu1024
Max Sum Plus Plus
MaxSumPlusPlusTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):13233 AcceptedSubmission(s):4361ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L's"M
yew1eb
·
2013-07-30 16:00
HDU 1244 Max Sum Plus Plus Plus(DP)
思路: 此题和
HDU1024
MaxSumPlusPlus属于同一类型的题目,只不过此题限定了段的长度; 状态转移方程:dp[i][j]=max(dp[i][j-1],dp[i-1
Job_yi
·
2013-07-28 09:00
HDU1024
——Max Sum Plus Plus(DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1024注意:这道题需要考虑大数的情况,其实最大也就是10^6*32767,所以__int64足够了。解决的思路是动态规划,这部分其实是我的弱点,所以多多训练。分析:当数组中第i个元素进来的时候,要么自成一组,要么就是加到原来的第j组的末尾。因为假设在第i-1个元素的时候有断开,那如果第i个元素足够大的话
kay_zhyu
·
2013-03-27 19:00
hdu1024
http://acm.hdu.edu.cn/showproblem.php?pid=1024状态转移方程dp[i][j]表示i段前j个数的最大数(包括a[j]的 所以最后的结果是max(dp[m][k]),1 #include #include #defineinf999999999 usingnamespacestd; inta[1000005]; intnow[1000005]; intpre
JustSteps
·
2013-03-18 15:00
Maximum sum(poj 2479 最大m子段和)
id=24792、题目大意:给定一串数字,求连续的两个不相交的子段的数和最大,由题目不难看出此题求得是两个子段的数和3、思路:跟上一篇博客
hdu1024
一样的想法,只是稍微处理一下题目,就不难看出类型一样
sdjzping
·
2013-03-07 16:00
hdu1024
主要参考这篇文章http://hi.baidu.com/eizi/blog/item/3c12270987a4ad38e9248880.html 搞了一上午,本来不想弄了。发现最近太急,很难静下心来。 状态转移方程设输入的数组为A[1...n],从中找出m个段,使者几个段的和为最大B[i][j]表示前j个数中取i个段的和的最大值,其中最后一个段包含A[j]。最后的解即为其中的某一个B[m][j],
zhanglei0107
·
2012-04-03 14:00
c
gcc
存储
交通
HDU1024
最大和子序列增强版
MaxSumPlusPlusTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):5360AcceptedSubmission(s):1773ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L's"MaxSum"pro
acm_davidcn
·
2010-09-16 01:00
解题报告
动态规划DP
HDU1024
最大和子序列增强版
MaxSumPlusPlusTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):5360 AcceptedSubmission(s):1773ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L's"Ma
ACM_DavidCN
·
2010-09-16 01:00
Module
Integer
input
360
IM
output
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他