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
hdu3415
连续子序列的最大和
HDU3415
MaxSumofMax-K-sub-sequenceGivenacirclesequenceA[1],A[2],A[3]......A[n].CirclesequencemeanstheleftneighbourofA[1]isA[n],andtherightneighbourofA[n]isA[1].NowyourjobistocalculatethemaxsumofaMax-K-sub-seq
鸭脖yb
·
2018-08-08 19:49
栈和队列
hdu3415
(单调队列)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3415 题意:一个长度为n包含正负整数的数环,即第1个的左边是第n个。从中选一个不超过k的序列,使得序列和最大,最大值相同选开始点最小的,开始点相同选长度最小的。 分析:单调队列维护在k个数之内的最小值的下标,然后一直扫一遍就行了,只要懂单调队列这题就是水题了。 #incl
·
2015-11-13 06:58
HDU
HDU3415
:Max Sum of Max-K-sub-sequence(单调队列)
Problem Description Given a circle sequence A[1],A[2],A[3]......A[n]. Circle sequence means the left neighbour of A[1] is A[n] , and the right neighbour of A[n] is A[1]. Now your job is to calcula
·
2015-11-12 20:52
sequence
HDU3415
题目大意: 给出一个有N个数字(-1000..1000,N<=10^5)的环状序列,找出一个长度不大于k的连续子序列,使其和最大。 分析: 我们可以将环状序列从某处切开,变成一行,然后复制前n-1个数字到后面,得到一个2*n-1的序列。问题即转换为在该2*n-1的序列中求长度不超过k的最大连续字段和。 预处理出前缀和,记为s。j到i的子段和即为s[i]-s[j-1]。现在只需要对每一
·
2015-11-11 08:11
HDU
hdu3415
:最大k子段和,单调队列
题目大意:给定长度为n的数组,求出最大的区间和,其中区间长度在[1,k]之间 分析: 学动态规划的时候我们会遇到一个经典问题 最大子段和,这个题跟最大子段和很类似 不同的是区间的长度有限制,无法用原算法解决 转换思路 区间[i,j]的和就是ans=sum(j)-sum(i-1) ( j - i <=k) 那么对于每个j 我们肯定希望sum(i-1)最小,所以我们只需要对sum(i
·
2015-11-08 14:55
HDU
HDU3415
题意:给一串数,求解最大连续子序列和。思路:和HDU1003一样,增加了两个条件,所取的区间长度必须在K范围内,另外这是一个循环数组,所以考虑可以用单调队列来做,另外可以直接循环数组操作,和1003差不多。#include #include #include #defineN200050 usingnamespacestd; intS[N],q[N]; intMAX,T,n,K,flag; i
k183000860
·
2015-08-02 14:00
1003
单调队列
最大连续子序列和
hdu3415
Max Sum of Max-K-sub-sequence
ProblemDescriptionGivenacirclesequenceA[1],A[2],A[3]......A[n].CirclesequencemeanstheleftneighbourofA[1]isA[n],andtherightneighbourofA[n]isA[1].NowyourjobistocalculatethemaxsumofaMax-K-sub-sequence.Ma
Kirito_Acmer
·
2015-05-18 20:00
单调队列
HDU3415
Max Sum of Max-K-sub-sequence (DP+单调队列)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3415题意:给定一个长度为n的环,求其中一个长度小于等于k的区间,使其和最大,输出最大和,区间的左右端点分析:直接想到暴力dp[i]=sum[i]-sum[i-k+1+j] (0 #include #include #include #include usingnamespacestd; consti
u013790563
·
2014-12-16 16:00
hdu3415
——Max Sum of Max-K-sub-sequence
MaxSumofMax-K-sub-sequenceTimeLimit:2000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):6130 AcceptedSubmission(s):2234ProblemDescriptionGivenacirclesequenceA[1],A[2
Guard_Mine
·
2014-12-04 16:00
单调队列
hdu3415
单调队列求区间最大和
http://acm.hdu.edu.cn/showproblem.php?pid=3415ProblemDescriptionGivenacirclesequenceA[1],A[2],A[3]......A[n].CirclesequencemeanstheleftneighbourofA[1]isA[n],andtherightneighbourofA[n]isA[1].Nowyourjob
u013573047
·
2014-11-11 20:00
hdu3415
求最大的连续不超过k的子序列的和。用单调队列维护。先求出s[1..i]的和,将前k个添加到n的结尾就相当于有循环和了。那么对于某个sj,他的最大的序列和为s[j]-s[i],其中 j-k-1 #include constintMAX_NUMBER=1000006; constintINF=2000000007; intsums[2*MAX_NUMBER]; intvalue[MAX_NUMB
xcszbdnl
·
2013-11-05 11:00
HDU3415
:Max Sum of Max-K-sub-sequence(单调队列)
ProblemDescriptionGivenacirclesequenceA[1],A[2],A[3]......A[n].CirclesequencemeanstheleftneighbourofA[1]isA[n],andtherightneighbourofA[n]isA[1].NowyourjobistocalculatethemaxsumofaMax-K-sub-sequence.Ma
libin56842
·
2013-07-22 14:00
队列
HDU
hdu3415
Max Sum of Max-K-sub-sequence
MaxSumofMax-K-sub-sequenceTimeLimit:1000MS MemoryLimit:32768KB 64bitIOFormat:%I64d&%I64uSubmit StatusDescriptionGivenacirclesequenceA[1],A[2],A[3]......A[n].Circlesequencemeanstheleftneighbo
·
2013-07-10 11:00
sequence
hdu3415
Max Sum of Max-K-sub-sequence
MaxSumofMax-K-sub-sequenceTimeLimit:1000MS MemoryLimit:32768KB 64bitIOFormat:%I64d&%I64uSubmit StatusDescriptionGivenacirclesequenceA[1],A[2],A[3]......A[n].Circlesequencemeanstheleftneighbo
u010422038
·
2013-07-09 13:00
SUM
max
m
of
hdu3415
HDU3415
Max Sum of Max-K-sub-sequence
原题传送:http://acm.hdu.edu.cn/showproblem.php?pid=3415【题目分析】因为序列是环状的,所以可以在序列后面复制一段(或者复制前k个数字)。如果用s[i]来表示复制过后的序列的前i个数的和,那么任意一个子序列[i..j]的和就等于[j]-s[i-1]。对于每一个j,用s[j]减去最小的一个s[i](i>=j-k+1)就可以得到以j为终点长度不大于k的和最大
·
2012-10-17 17:00
sequence
【DP+单调队列】
hdu3415
Max Sum of Max-K-sub-sequence
MaxSumofMax-K-sub-sequence题目:http://acm.hdu.edu.cn/showproblem.php?pid=3415题意:一个长度为n包含正负整数的数环,即第1个的左边是第n个。从中选一个不超过k的序列,使得序列和最大,最大值相同选开始点最小的,开始点相同选长度最小的。题解:不难看出动态方程为dp[i]=max{sum[i]-sum[j]}(i-k #includ
ACM_Ted
·
2012-08-26 15:00
【
HDU3415
】Max Sum of Max-K-sub-sequence,思路+解题报告+AC代码+自虐般疯狂吐槽【0.3%达成!】
#include #include #include #include usingnamespacestd; constintMAX_SIZE=100010*2; constintINFINITE=99999999; intnum[MAX_SIZE]; intsum[MAX_SIZE]; intq[MAX_SIZE]; intind[MAX_SIZE]; intbegin; intend; /**
c0de4fun
·
2012-08-03 02:00
hdu3415
Max Sum of Max-K-sub-sequence
MaxSumofMax-K-sub-sequenceTimeLimit:2000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):3193 AcceptedSubmission(s):1136ProblemDescriptionGivenacirclesequenceA[1],A[2
magicnumber
·
2012-04-07 17:00
HDU3415
单调队列
这题是单调队列的典型运用。 至于单调队列,就是一个双端队列,在队首(f)出队,在队尾(b)出队入队,我们要维护整个队列的元素是单调的,比如,我们要动态查询从左向右的区间的最小值,那么我们就要在队列中维护一个单调递增的序列,从左向右枚举,队列的元素还有一个id值,代表这个元素在原序列中的位置,然后左边的元素如果不在范围内了,就判断队首的元素id是否是这个左边的id,是的话就出队,否则就不管。关于元素
lyhypacm
·
2010-12-06 21:00
OO
ini
扩展
hdu3415
【单调队列】
hdu3415
【单调队列】题目链接:http://acm.hdu.edu.cn/showproblem.php?
寒月
·
2010-08-24 19:00
HDU 3415 单调队列
HDU3415
单调队列题目大意:给出一个有N个数字(-1000..1000,N=j-k+1)就可以得到以j为终点长度不大于k的和最大的序列了。将原问题转化为这样一个问题后,就可以用单调队列解决了。
为生存而奔跑
·
2010-08-04 15:00
上一页
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
其他