news 2026/5/28 16:42:13

洛谷 P3503 [POI 2010] KLO-Blocks 题解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
洛谷 P3503 [POI 2010] KLO-Blocks 题解

Solution

双指针做法。

本文中合法子段指一段高度≥k\ge kk的连续堆。

观察数据范围,发现O(nm)O(nm)O(nm)可过。于是考虑对于每个kkkO(n)O(n)O(n)做一遍。

看到最长子段问题,尝试双指针。设以lll为左端点的最长合法子段右端点为rrr。易证lll递增时rrr单调不降。

于是只需要O(1)O(1)O(1)判断一个区间[l,r][l,r][l,r]是否合法。显然贪心地把左右两边所有木块尽量往这个区间上集中。设preipre_iprei为第1∼i1\sim i1i堆最多能向i+1i+1i+1贡献多少个木块,sufisuf_isufi同理。pre,sufpre,sufpre,suf均可以O(n)O(n)O(n)递推处理。

此时[l,r][l,r][l,r]合法等价于prel−1+sufr+1+∑i=lrai≤k⋅(r−l+1)pre_{l-1}+suf_{r+1}+\sum_{i=l}^r a_i\le k\cdot (r-l+1)prel1+sufr+1+i=lraik(rl+1)。可以O(1)O(1)O(1)判断。

时间复杂度O(nm)O(nm)O(nm)

Code

#include<bits/stdc++.h>#definerept(i,a,b)for(inti(a);i<=b;++i)#definepert(i,a,b)for(inti(a);i>=b;--i)#defineintlonglongusingnamespacestd;constintN=1e6+5;inta[N],s[N],pre[N],suf[N],n,m,k,ans;boolcheck(intl,intr){returnpre[l-1]+suf[r+1]+s[r]-s[l-1]>=k*(r-l+1);}signedmain(){cin.tie(0)->sync_with_stdio(0);cin>>n>>m;rept(i,1,n)cin>>a[i],s[i]=s[i-1]+a[i];while(m--){ans=0;cin>>k;rept(i,1,n)pre[i]=max(0ll,a[i]+pre[i-1]-k);pert(i,n,1)suf[i]=max(0ll,a[i]+suf[i+1]-k);for(intl=1,r=0;l<=n;++l){while(r<n&&check(l,r+1))++r;ans=max(ans,r-l+1);}cout<<ans<<' ';}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/28 13:12:37

医疗AI新突破:单卡RTX4090运行Baichuan-M2-32B-GPTQ实战教程

医疗AI新突破&#xff1a;单卡RTX4090运行Baichuan-M2-32B-GPTQ实战教程 1. 为什么这个医疗模型值得你立刻上手 你有没有试过在本地部署一个真正能看病的AI&#xff1f;不是那种只会背教科书、答错题还理直气壮的模型&#xff0c;而是能像资深医生一样&#xff0c;一边听你描…

作者头像 李华
网站建设 2026/5/28 14:21:23

DeerFlow环境部署详解:Python+Node.js多工具集成方案

DeerFlow环境部署详解&#xff1a;PythonNode.js多工具集成方案 1. DeerFlow是什么&#xff1a;你的个人深度研究助理 DeerFlow不是另一个简单的聊天机器人&#xff0c;而是一个真正能帮你“做研究”的智能助手。它不满足于回答问题&#xff0c;而是主动调用搜索引擎、运行Py…

作者头像 李华
网站建设 2026/5/14 3:32:42

3D动画制作新体验:HY-Motion 1.0一键生成骨骼动画

3D动画制作新体验&#xff1a;HY-Motion 1.0一键生成骨骼动画 你有没有过这样的经历&#xff1a;为游戏角色设计一段自然的挥手动作&#xff0c;反复调整关键帧、调试IK权重、检查关节旋转范围&#xff0c;最后导出FBX再导入引擎&#xff0c;发现肘部穿模了&#xff1f;或者接到…

作者头像 李华
网站建设 2026/5/27 23:23:40

PDF-Extract-Kit-1.0保姆级教学:PDF图片型文档如何启用OCR引擎与语言包

PDF-Extract-Kit-1.0保姆级教学&#xff1a;PDF图片型文档如何启用OCR引擎与语言包 你是不是也遇到过这样的情况&#xff1a;手头有一份扫描版PDF&#xff0c;全是图片&#xff0c;文字没法复制、搜索、编辑&#xff0c;更别说提取表格或公式了&#xff1f;打开之后只能干瞪眼…

作者头像 李华
网站建设 2026/5/28 13:12:43

颠覆式暗黑3效率工具:从痛点突破到职业定制的全面优化指南

颠覆式暗黑3效率工具&#xff1a;从痛点突破到职业定制的全面优化指南 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面&#xff0c;可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper 在暗黑破坏神3的冒险旅程中&am…

作者头像 李华
网站建设 2026/5/28 14:36:40

如何突破Mac NTFS读写限制?Free-NTFS-for-Mac工具的全方位解决方案

如何突破Mac NTFS读写限制&#xff1f;Free-NTFS-for-Mac工具的全方位解决方案 【免费下载链接】Free-NTFS-for-Mac Nigate&#xff0c;一款支持苹果芯片的Free NTFS for Mac小工具软件。NTFS R/W for macOS. Support Intel/Apple Silicon now. 项目地址: https://gitcode.co…

作者头像 李华