Educational Codeforces Round 28
1|0A. Curriculum Vitae
因为1
之后不能出现0
,所以求一下前缀0
的个数和后缀1
的个数,然后枚举第一个1
的位置即可
2|0B. Math Show
先枚举几组,剩下的贪心选就好了。
3|0C. Four Segments
把三个分割符记为,
然后发现当确定时,的选择相互没有影响,所以可以的计算对于每一个最优的的出现在哪里,同理,最后枚举一下选择哪个即可
4|0D. Monitor
其实就是一个矩形一开始是全部是正无穷,然后修改某些点的值,询问所有的子矩形的最大值最小是多少。
首先可以滑动窗口的方式计算出每一行所有长度为的子区间的最大值,把这些结果全部存到一个数组中,再用滑动窗口计算每一个的子矩形的最大值,最后取最小值即可。
5|0E. Chemistry in Berland
树形DP,表示节点在满足子树内全部够用的情况下还余/欠多少,递归的计算出每个节点的子节点的多余的就转化给父节点,不够就从父节点转换,最后检查根节点是否够用即可。
要注意的是转换的过程中很容易爆long long
,最大值应该是,所以要用些特殊的方法来判断。
6|0F. Random Query
题目期望是假的,实际上我们只要计算所有的子区间中的数的种类数之和最后除以子区间数即可。
要计算区间内数的种类显然不可取,因为至少有的复杂度。规定区间内每种数最后一次出现有效,这样的话我们来考虑每个数在哪些区间里面会产生贡献。我们计算出表示下一次出现的位置,那么数字向左一直到都可以产生贡献,向右到都可以产生贡献,所有产生贡献的区间有
注意也可以产生贡献,但是只能产生一次贡献。
__EOF__

本文作者:PHarr
本文链接:https://www.cnblogs.com/PHarr/p/17551154.html
关于博主:前OIer,SMUer
版权声明:CC BY-NC 4.0
声援博主:如果这篇文章对您有帮助,不妨给我点个赞
本文链接:https://www.cnblogs.com/PHarr/p/17551154.html
关于博主:前OIer,SMUer
版权声明:CC BY-NC 4.0
声援博主:如果这篇文章对您有帮助,不妨给我点个赞
标签:
CodeForces
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· Apache Tomcat RCE漏洞复现(CVE-2025-24813)