音乐主题的网站设计seo优化上首页
2026/2/7 13:52:21 网站建设 项目流程
音乐主题的网站设计,seo优化上首页,中小企业网站建设客户需求调查问卷,新媒体与网站建设本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来#xff0c;并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构#xff0c;旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。 欢迎大…本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。欢迎大家订阅我的专栏算法题解C与Python实现附上汇总贴算法竞赛备考冲刺必刷题C | 汇总【题目来源】洛谷P1714 切蛋糕 - 洛谷【题目描述】今天是小 Z 的生日同学们为他带来了一块蛋糕。这块蛋糕是一个长方体被用不同色彩分成了n nn个相同的小块每小块都有对应的幸运值。小 Z 作为寿星自然希望吃到的蛋糕的幸运值总和最大但小 Z 最多又只能吃m ( m ≤ n ) m(m\le n)m(m≤n)小块的蛋糕。请你帮他从这n nn小块中找出连续的k ( 1 ≤ k ≤ m ) k(1 \le k\le m)k(1≤k≤m)块蛋糕使得其上的总幸运值最大。形式化地在数列{ p n } \{p_n\}{pn​}中找出一个子段[ l , r ] ( r − l 1 ≤ m ) [l,r](r-l1\le m)[l,r](r−l1≤m)最大化∑ i l r p i \sum\limits_{il}^rp_iil∑r​pi​。【输入】第一行两个整数n , m n,mn,m。分别代表共有n nn小块蛋糕小 Z 最多只能吃m mm小块。第二行n nn个整数第i ii个整数p i p_ipi​代表第i ii小块蛋糕的幸运值。【输出】仅一行一个整数即小 Z 能够得到的最大幸运值。【输入样例】5 2 1 2 3 4 5【输出样例】9【算法标签】《洛谷 P1714 切蛋糕》 #单调队列# #前缀和# #队列# ST表【代码详解】#includebits/stdc.husingnamespacestd;#defineintlonglong// 将int重新定义为long long类型constintN500005;// 定义常量N最大数组大小intn,m,a[N],sa[N],ans-1e9;// n: 数组长度, m: 最大子数组长度, a: 原始数组, sa: 前缀和数组, ans: 结果structNode{ints,idx;// s: 前缀和值, idx: 索引位置};dequeNodedq;// 双端队列用于维护滑动窗口最小值signedmain()// 因为使用了#define int long long, 所以用signed main{cinnm;// 输入数组长度和最大子数组长度for(inti1;in;i){cina[i];// 输入数组元素sa[i]sa[i-1]a[i];// 计算前缀和}for(inti1;in;i){// 维护队列删除超出窗口范围的元素// 窗口大小为m只考虑i-m到i-1的前缀和while(dq.size()){if(dq.front().idxi-m)// 如果队首元素索引小于i-m超出窗口范围dq.pop_front();// 删除队首元素elsebreak;// 否则停止}// 维护队列保持队列单调递增// 如果队尾元素的前缀和大于等于当前前缀和则删除队尾元素// 因为对于后面的i来说当前元素更优前缀和更小索引更靠后while(dq.size()){if(dq.back().ssa[i-1])// 如果队尾元素的前缀和大于等于当前前缀和dq.pop_back();// 删除队尾元素elsebreak;// 否则停止}// 将当前元素的前缀和加入队列dq.push_back({sa[i-1],i-1});// 更新答案当前前缀和减去队列最小值// 即sa[i] - sa[j] 表示子数组a[j1...i]的和ansmax(ans,sa[i]-dq.front().s);}coutansendl;// 输出最大子数组和return0;}【运行结果】5 2 1 2 3 4 5 9

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询