news 2026/5/1 6:01:07

GESP认证C++编程真题解析 | P11963 [GESP202503 六级] 环线

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GESP认证C++编程真题解析 | P11963 [GESP202503 六级] 环线

​欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!

专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。

适合人群:

  • 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
  • 希望系统学习C++/Python编程的初学者
  • 想要提升算法与编程能力的编程爱好者

附上汇总帖:GESP认证C++编程真题解析 | 汇总


【题目来源】

洛谷:P11963 [GESP202503 六级] 环线 - 洛谷

【题目描述】

小 A 喜欢坐地铁。地铁环线有n nn个车站,依次以1 , 2 , ⋯ , n 1,2,⋯,n1,2,,n标号。车站i ( 1 ≤ i < n ) i (1≤i<n)i(1i<n)的下一个车站是车站i + 1 i+1i+1。特殊地,车站n nn的下一个车站是车站1 11

小 A 会从某个车站出发,乘坐地铁环线到某个车站结束行程,这意味着小 A 至少会经过一个车站。小 A 不会经过一个车站多次。当小 A 乘坐地铁环线经过车站i ii时,小 A 会获得a i a_iai点快乐值。请你安排小 A 的行程,选择出发车站与结束车站,使得获得的快乐值总和最大。

【输入】

第一行,一个正整数n nn,表示车站的数量。

第二行,n nn个整数a i a_iai,分别表示经过每个车站时获得的快乐值。

【输出】

一行,一个整数,表示小 A 能获得的最大快乐值。

【输入样例】

4 -1 2 3 0

【输出样例】

5

【算法标签】

《洛谷 P11963 环线》 #单调队列# #GESP# #2025#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;#defineintlonglong// 定义宏,将int替换为long long类型constintN=200005;// 定义数组的最大大小intn;// 输入的数字个数inta[N*2];// 存储输入的数字,并复制一份实现环形处理intsa[N*2];// 前缀和数组intmaxn=-2e18;// 记录最大子段和,初始化为极小值intq[N*2];// 单调队列,用于维护窗口最小值signedmain(){cin>>n;// 输入数字个数// 输入数字并复制一份实现环形处理for(inti=1;i<=n;i++){intx;cin>>x;a[i]=x;a[i+n]=x;// 复制一份,实现环形数组}// 计算前缀和数组for(inti=1;i<=2*n;i++){sa[i]=sa[i-1]+a[i];}// 初始化单调队列inthh=0,tt=-1;// 队列头尾指针// 遍历前缀和数组,寻找最大子段和for(inti=1;i<=2*n;i++){// 维护窗口大小不超过nwhile(hh<=tt&&q[hh]<i-n)hh++;// 计算当前窗口的最大子段和if(hh<=tt){maxn=max(maxn,sa[i]-sa[q[hh]]);}// 维护单调递增队列while(hh<=tt&&sa[q[tt]]>=sa[i])tt--;q[++tt]=i;}cout<<maxn<<endl;// 输出最大子段和return0;}

【运行结果】

4 -1 2 3 0 5
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 18:37:01

GESP认证C++编程真题解析 | P11964 [GESP202503 七级] 图上移动

​欢迎大家订阅我的专栏&#xff1a;算法题解&#xff1a;C与Python实现&#xff01; 本专栏旨在帮助大家从基础到进阶 &#xff0c;逐步提升编程能力&#xff0c;助力信息学竞赛备战&#xff01; 专栏特色 1.经典算法练习&#xff1a;根据信息学竞赛大纲&#xff0c;精心挑选…

作者头像 李华
网站建设 2026/3/12 15:32:51

GESP认证C++编程真题解析 | P11965 [GESP202503 七级] 等价消除

​欢迎大家订阅我的专栏&#xff1a;算法题解&#xff1a;C与Python实现&#xff01; 本专栏旨在帮助大家从基础到进阶 &#xff0c;逐步提升编程能力&#xff0c;助力信息学竞赛备战&#xff01; 专栏特色 1.经典算法练习&#xff1a;根据信息学竞赛大纲&#xff0c;精心挑选…

作者头像 李华
网站建设 2026/5/1 1:10:05

295. Java Stream API - 选择适用于并行计算的 BinaryOperator

文章目录295. Java Stream API - 选择适用于并行计算的 BinaryOperator&#x1f6a7; 什么是并行计算下的归约&#xff1f;&#x1f4e6; 模拟并行归约的过程&#xff08;简化版&#xff09;&#x1f50d; 归约顺序的不同拆法&#xff08;Associativity&#xff09;&#x1f39…

作者头像 李华
网站建设 2026/4/23 17:42:15

视频技术在现代社会中的应用与发展

视频技术在现代社会中的应用与发展 引言 随着科技的飞速发展,视频技术已经成为现代生活中不可或缺的一部分。从日常娱乐到工作沟通,视频技术在各个方面都扮演着重要角色。本文将探讨视频技术的基本概念、应用领域、发展现状以及未来趋势。 一、视频技术的基本概念 1.1 视…

作者头像 李华
网站建设 2026/4/23 12:39:43

HTML5 表单元素

HTML5 表单元素 引言 HTML5作为现代网页开发的核心技术之一,引入了许多新的表单元素和属性,极大地丰富了表单的功能性和用户体验。本文将详细介绍HTML5中的各种表单元素,帮助开发者更好地理解和应用这些新特性。 一、HTML5表单元素概述 HTML5表单元素主要包括以下几类:…

作者头像 李华
网站建设 2026/4/18 9:15:10

网站主机提供商:全面解析与选择指南

网站主机提供商&#xff1a;全面解析与选择指南 引言 在互联网时代&#xff0c;网站已经成为企业展示形象、拓展业务的重要平台。而网站的建设离不开一个稳定的网站主机提供商。本文将为您全面解析网站主机提供商的选择标准、注意事项以及如何进行有效的选择。 什么是网站主机提…

作者头像 李华