长度不超过k的最大连续子序列(单调队列)

springcloud+nacos+gateway+oauth2小聚会 在微服务工程中,Nacos作为目前主流的注册中心和配置中心,Spring Cloud Gateway作为目前主流的网关,下面引入spring security+oauth2+jwt作为认证和授权中心,进行简单的聊聊。 阅读详情
/*单调队列:单调队列即保持队列中的元素单调递增(或递减)的这样一个队列,可以从两头删除,只能从队尾插入.
队首为最优解,插入时从队尾插入。为了保证队列的单调性,我们从队尾开始删除元素,直到队尾元素比当前需要插入的元素优
因为它们已经不可能成为最优的元素了,因为当前要插入的元素位置比它们更优,值比它们更优*/
//长度不超过k的最大连续子序列

#include<cstdio>
#include<algorithm>
using namespace std;

const int MAXN=100007;
int sum[MAXN];
int queue[MAXN];

int main()
{
	int T,id=0;
	scanf("%d",&T);
	while(T--)
	{
		int n,k,i,j,ans;
		scanf("%d%d",&n,&k);
		scanf("%d",sum+1);
		ans = sum[1] ;
		int fre=0,rea=0;
		queue[rea++] = 1;
		for(i=2;i<=n;i++)
		{
			scanf("%d",sum+i);
			while(i-queue[fre] >= k)
			{
				fre ++;
			}
			for(j=fre;j<rea;j++)
			{
				sum[ queue[j] ] += sum[i];
			}
			while(rea>fre && sum[ queue[rea-1] ] <= sum[i])
			{
				rea --;
			}
			queue[rea++] = i;
			ans = max(ans , sum[ queue[fre] ]);
		}
		printf("Case #%d: %d\n",++id,ans);
	}
	return 0;
}

ssm框架搭建 这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载 立即下载

相关推荐

MPU6050的四元数解算姿态方法

使用MPU6050硬件DMP解算姿态是非常简单的,下面介绍由三轴陀螺仪和加速度计的值来使用四元数软件解算姿态的方法。 我们先来看看如何用欧拉角描述一次平面旋转(坐标变换): MPU6050的四元数解算姿态方法 设坐标系绕旋转α角后得到坐标系,在空间中有一个矢量在坐标系中的投影为,在内的投影为由于旋转绕进行,所以Z坐标未变,即有。 转换成矩阵形式表示为: 即 所以从旋转到可以写成上面仅仅是绕一根轴的旋转,如果三维空间中的欧拉角旋转要转三次: MPU6050的四元数解算姿态方法 上面得到了一个表示旋转的方

qq_41938005的博客 8393

HDU 3415 Max Sum of Max-K-sub-sequence(长度不超过k的最大连续子序列和,单调队列)

题目链接: HDU 3415 Max Sum of Max-K-sub-sequence 题意: 给nn个数,首尾相连,求长度不超过kk的最大连续子序列和。 数据范围:1≤n≤100000,1≤k≤n1\leq n\leq100000 , 1\leq k\leq n 分析: 因为考虑首尾相连,所以我们把nn个数看成2∗n2*n个数,其中data[n+]=data[i]data[n+]=

ramay7 2539

深信服 SANGFOR 设备密码恢复和配置备份恢复

、恢复密码 当我们拿到一台设备要去配置管理的时候,首先是要确认设备的登录IP,其次就是确认设备控制台登录密码。不知情的情况下如何找到设备的登录IP,请参考文档: http://bbs.sangfor.com.cn/forum.php?mod=viewthread&tid=9484 下文中提到的关于“网关升级客户端”的一些功能,也请参考此文档。 那么恢复密码,大家都知道有2种方法:U盘恢复密码、交叉线恢复密码。 1、U盘恢复密码 注意:仅恢复admin密码,不影响配置。 U盘恢复密码的前

李先生在闯荡江湖 1万+

累加值为k的最长子数组,累加值不大于k的最长子数组

问题描述1:给定一个数组,值全部是正数,请返回累加值为给定值 k 的最长子数组的长度。 问题描述2:给定一个数组,值可以为正数负数和0,请返回累加值为给定值 k 的最长子数组长度。 问题描述3:给定一个数组,值可以为正数负数和0,请返回累加值不大于给定值 k 的最长子数组长度。

惋叹时间笔艳的博客 1612

ROS+Gazebo仿真入门:用TurtleBot3模拟扫地机器人全流程

本文详细介绍了如何利用ROS和Gazebo仿真平台,以TurtleBot3 Waffle Pi模型为核心,从零搭建并运行一个虚拟扫地机器人的全流程。内容涵盖仿真环境搭建、世界与机器人模型解析,并重点演示了SLAM建图、自适应蒙特卡罗定位以及全局与局部路径规划等核心算法实战,为机器人算法开发与验证提供了高效、低成本的解决方案。

sre5engineer的博客 1089

Rust 编译工具链配置指南:从 link.exe 缺失到完美解决

本文详细解析了Windows下Rust编译时常见的'link.exe not found'错误,提供了MSVC和MinGW-w64两种工具链的完整配置指南。从Visual Studio组件安装到环境变量设置,再到疑难排查技巧,帮助开发者彻底解决Rust编译工具链配置问题,提升开发效率。

earth的博客 320

【hdu3415】【单调队列 】Max Sum of Max-K-sub-sequence【求长度不大于k的区间最大子串和】

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=3415 题意:给出一个有N个数字(N  思路: 因为序列是环状的,所以可以在序列后面复制前k-1个数字。 如果用s[i]来表示复制过后的序列的前i个数的和,那么任意一个子序列[i..j]的和就等于s[j]-s[i-1]。 对于每一个j,用s[j]减去最小的一个s[i](i>=j-k)就可以得

魔笛手的博客 913

Kaggle时间序列竞赛金牌方案解析与实战指南

本文深度解析了Kaggle时间序列竞赛的金牌方案,揭示了其成功不仅依赖先进模型,更在于系统工程思维。文章系统阐述了从数据理解、特征工程到模型集成与后处理的全流程,并重点剖析了分层建模、自定义损失函数、时序交叉验证等核心技巧,为参赛者提供了从理论到实战的完整指南。

weixin_29196315的博客 358

单调队列(数列中长度不超过k的子序列和的最值)

★实验任务 小 F 很爱打怪,今天因为系统 bug,他提前得知了 n 只怪的出现顺序以及击 倒每只怪得到的成就值 ai。设第一只怪出现的时间为第 1 秒,这个游戏每过 1 秒 钟出现一只新怪且没被击倒的旧怪消失。小 F 决定发动一次技能,他的技能最多 维持 k 秒,他希望获得最大的成就值,请你帮他计算他发动技能的时间 l 和技能 结束时间 r(r-l+1<=k)。当存在多种方案使得成就值最大...

weixin_30615767的博客 496

XTDrone平台FAST-LIO2与ego-planner结合路径规划部署

之前做了XTDrone平台FAST-LIO2的部署现在将其结合ego-planner进行导航规划,之前查看教程是使用视觉进行定位导航的,现在重新学习。修改advanced_param_xtdrone.xml,这里有视觉信息,不修改会报错显示为输入视觉话题信息。怎么描述 ,感觉当时觉得很难的问题突然就给解决了,一顿复杂,最近勤更新吧,继续开始学习。还有一个想法就是两个rviz结合在一起启动,写了一个demo,融合的不太好感觉额。改为只使用雷达点云,这里仿真的话题是/scan。

m0_56093217的博客 1083

PCL 平面点云的凹多边形边界提取【2025最新版】

平面点云的凹多边形边界提取及边界轮廓线绘制。博客长期更新,本文最近更新时间为:2025年1月6日。

点云侠的博客 7183

N个数,求小于K的最大子序列之和

曾几何时,姐姐我一看到这样的题目就倍感头痛。然而,昨日受到启发,忽然想起了模仿二级制可以表示穷举法。兴奋得彻夜难眠,一早就爬起来,实现了该代码。 具体分析如下: 首先,题目有两个判断因素:小于N,最大。 我想到了一个做笨的方法,将N个数所有可能的子序列相加,看看每个之和是否小于k,如果满足这个条件,就放入result中。接下来,每次循环,得到的和都跟result进行比较。只要它小于k并且大于...

licunchen的专栏 954

【现代控制理论期末考点】

现代控制理论期末考点,适用于 SEU Automation

【人工智障 | 计算鸡视觉 | 机器孩】 1445

BIT 1011 Maximum Sum II

题目大意:给出n(n   考察点:单调队列   思路分析:要求长度不超过k的最大连续子序列和,就是求max(s[j]-s[i]),j-i>k,也就是对于每个j,我们要找出最小的i,进而求出在j之前最大的和。那么如何找i呢,就需要用单调队列了。 单调队列即保持队列中的元素单调递增(或递减)的这样一个队列,可以从两头删除,只能从队尾插入。单调队列的具体作用在于,由于保持队列中的元素满足单调性

ydzhang12345的专栏 367

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

hdu 3415 Max Sum of Max-K-sub-sequence(单调队列)

Max Sum of Max-K-sub-sequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 5385    Accepted Submission(s): 1952 Problem Description

WEYuLi的专栏 828

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

hdu 3415"Max Sum of Max-K-sub-sequence"(单调队列)

传送门 题意:   给出一个有 N 个数字([-1000 , 1000],N ≤ 105)的环状序列;   让你求一个和最大的连续子序列,并记录起始点。   要求这个连续子序列的长度小于等于K,加和相同的不同区间,输出起点最小的那组答案。 题解:   因为序列是环状的,所以可以在序列后面复制一段(或者复制前k - 1个数字)。   如果用sum[ i ]来表示复制过后的序列的前...

weixin_30369041的博客 139

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

HDU 3415 Max Sum of Max-K-sub-sequence 单调队列

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 calculate the max sum of a Max...

紫芝的博客 575

连续子序列的最大和 HDU3415

                                   Max Sum of Max-K-sub-sequence 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 o...

路漫漫其修远兮,吾将上下而求索 448

Max Sum of Max-K-sub-sequence HDU - 3415 (单调队列 好题)

题意: 给定n长度的序列, 求其中连续且长度不超过k的子序列的最大和 题解: 很常见的一类题, 和这道题非常类似, 一个是求子序列最大长度, 一个是求子序列最大和, 下面来说一下这道题 首先运用一个预处理的思想, 定义sum[i] = ∑1isi\sum_1^is_i∑1i​si​ 如此一来, maxK[i, j] = sum[j] - min{sum[i] | 1&amp;lt;=i&amp;lt;j}, 也...

Suprit's blog 573

HDU 3415 Max Sum of Max-K-sub-sequence (单调队列)

Max Sum of Max-K-sub-sequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4573    Accepted Submission(s): 1653 Problem Description Give...

weixin_34128534的博客 106

hdu3415Max Sum of Max-K-sub-sequence(单调队列)

->题目请戳这里 题目大意:给n个数,这n个数首尾相连。求一个长度为不超过k的连续子序列最大和。并求出起始和终止位置。 题目分析:求某段连续区间和的最大值,单调队列解决。具体做法是:先求出sum[1]到sum[n],我们考虑第i个数,用一个单调队列维护sum[i - k]到sum[i - 1]的最小值,设这个最小值是sum[j],那么sum[i] - sum[j]就是j到i的这个区间的最大连续

ophunter的专栏 1133

HDU 3415 Max Sum of Max-K-sub-sequence(单调队列)

题目链接:Click here~~ 前几天学的单调队列,然后找题目练习,看这道题两天了,终于想通了。 题意: 给你一个循环序列{An},让你找出长度不大于K的连续子序列,使这个子序列和最大。 解题思路: 由于子序列连续,所以和上道题目一样,它的和可以通过两个前缀和作差得到。(即sum[i~j]=sum[j]-sum[i-1](j-i+1 而对于同一个序列终点来说,起点左边那个元

nyist_xiaod 1366

[HDU 3415] Max Sum of Max-K-sub-sequence

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[...

weixin_30872671的博客 88

【Week13作业 E】TT的神秘任务3【单调队列优化dp】

题意: TT 猫咖的生意越来越红火,人越来越多,也越来越拥挤。 为了解决这个问题,TT 决定扩大营业规模,但猫从哪里来呢? TT 第一时间想到了神秘人,想要再次通过完成任务的方式获得猫咪。 而这一次,神秘人决定加大难度。 给定一个环,A[1], A[2], A[3], … , A[n],其中 A[1] 的左边是 A[n]。要求从环上找出一段长度不超过 K 的连续序列,使其和最大。 这一次,TT 陷入了沉思,他需要你们的帮助。 第一行一个整数 T,表示数据组数,不超过 100。 每组数据第一行给定两个整数 N

xKuro的博客 345

单调队列优化dp TT的神秘任务三

题意: TT 猫咖的生意越来越红火,人越来越多,也越来越拥挤。 为了解决这个问题,TT 决定扩大营业规模,但猫从哪里来呢? TT 第一时间想到了神秘人,想要再次通过完成任务的方式获得猫咪。 而这一次,神秘人决定加大难度。 给定一个环,A[1], A[2], A[3], … , A[n],其中 A[1] 的左边是 A[n]。要求从环上找出一段长度不超过 K 的连续序列,使其和最大。 这一次,TT 陷入了沉思,他需要你们的帮助。 Input 第一行一个整数 T,表示数据组数,不超过 100。 每组数据第一行给定

FoxMakarov的博客 289

环上取数【动态规划dp】【单调队列优化】

问题描述 给定一个环,A[1], A[2], A[3], … , A[n],其中 A[1] 的左边是 A[n]。要求从环上找出一段长度不超过 K 的连续序列,使其和最大。 Input 第一行一个整数 T,表示数据组数,不超过 100。 每组数据第一行给定两个整数 N K。(1 ≤ N ≤ 100000, 1 ≤ K ≤ N) 接下来一行,给出 N 个整数。(-1000 ≤ A[i] ≤ 1000)。 Output 对于每一组数据,输出满足条件的最大连续和以及起始位置和终止位置。如果有多个结果,输出起始位置最

YingMila的博客 329
上一篇: HDU 4463 最小生成树 并查集
下一篇: J~G~J~Q
MakingMaker
博客等级 码龄15年 6粉丝 108原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值