news 2026/10/22 4:58:53

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

作者头像

张小明

前端开发工程师

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

Solution

双指针做法。

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

观察数据范围,发现O(nm)O(nm)O(nm)可过。于是考虑对于每个kkk都O(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 i1∼i堆最多能向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)prel−1​+sufr+1​+∑i=lr​ai​≤k⋅(r−l+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/10/21 18:11:19

DeepSeek-R1-Distill-Qwen-1.5B应用案例:打造个人知识问答助手

DeepSeek-R1-Distill-Qwen-1.5B应用案例&#xff1a;打造个人知识问答助手 你是不是也经历过这些时刻&#xff1f; 翻遍笔记找不到某次课上讲的贝叶斯公式推导&#xff1b;查了三篇论文&#xff0c;还是没理清Transformer中QKV矩阵到底怎么算&#xff1b;导师临时让你补一段项…

作者头像 李华
网站建设 2026/10/21 13:43:36

AI作曲神器体验:Local AI MusicGen生成赛博朋克背景音乐实战

AI作曲神器体验&#xff1a;Local AI MusicGen生成赛博朋克背景音乐实战 1. 为什么普通人也能当作曲家&#xff1f; 你有没有过这样的时刻&#xff1a;正在剪辑一个未来感十足的赛博朋克短片&#xff0c;画面已经完成——霓虹灯在雨中晕染、机械义体泛着冷光、全息广告在楼宇…

作者头像 李华
网站建设 2026/10/21 23:35:53

手把手教你用OFA模型分析图片语义关系(英文版)

手把手教你用OFA模型分析图片语义关系&#xff08;英文版&#xff09; 你是否曾面对一张图片&#xff0c;想快速判断某句英文描述是否“必然成立”“明显矛盾”或“无法确定”&#xff1f;比如看到一张猫坐在沙发上的照片&#xff0c;输入前提 “A cat is sitting on a sofa”…

作者头像 李华
网站建设 2026/10/21 7:45:04

手把手教你用Qwen2.5-7B-Instruct打造专业级AI写作助手

手把手教你用Qwen2.5-7B-Instruct打造专业级AI写作助手 1. 为什么你需要一个“专业级”写作助手&#xff1f; 你是否经历过这些场景&#xff1f; 写周报时卡在第一句话&#xff0c;反复删改半小时仍不满意&#xff1b;给客户写方案&#xff0c;逻辑清晰但语言干瘪&#xff0…

作者头像 李华
网站建设 2026/10/21 4:11:31

MinerU避坑指南:文档解析常见问题全解决

MinerU避坑指南&#xff1a;文档解析常见问题全解决 1. 为什么你用MinerU总“卡在第一步”&#xff1f;——从模型本质讲清适用边界 很多人一上手就问&#xff1a;“我传了PDF截图&#xff0c;为什么没识别出表格&#xff1f;”“论文里的公式怎么变成乱码了&#xff1f;”—…

作者头像 李华