USACO21DEC B&S
前言
无语。。。
状态贼差,每一题就要交四五次。
Bronze T1 4 次,T2 9 次。
Sliver T2,T3 都是十多次,T1 甚至就没做出来。
(结果最后发现是忘了排序。。。)
Bronze
A:Lonely Photo
题目链接:luogu P7993
给你一个 01 串,然后问你有多少个长度大于等于三的子串满足 0 的个数或 1 的个数为 1。
就直接枚举每个 1 和 0 的位置搞它可以贡献的范围。
B:Air Cownditioning
题目链接:luogu P7994
给你一个数列,然后你每次可以选一个区间加 1 或减 1,然后问你最少要多少次操作把所有数变成 0。
就会发现加减抵消和直接只加只减的效果一样,那就直接暴力推过去搞即可。
C:Walking Home
题目链接:luogu P7995
给你一个矩阵,你要从左上角走到右下角,然后有一些地方不可以走,你只能向右或向下走,而且你走的方向的改变次数不能超过 ,然后问你有多少种走的方案。
不难看出是不会往回走,那就直接 dfs / bfs 即可。
Sliver
A:Closest Cow Wins
题目链接:luogu P7990
有一个数轴,给你 个得分点的位置和分数,然后别人在 个整数点放了一些据点。
然后你可以放 个据点,可以放在小数位置。然后判断一个得分点被谁占领是看它距离谁的据点近,如果距离就是别人占领。
考虑到我们可以按敌人的据点把数轴分成若干个部分,这些位置顶多放两个(把据点里面的点都包围住),那两个就是全部的贡献,一个的话我们可以通过滑动窗口单调队列得到最大的贡献。
那我们可以把放第一个的求出来,放第二个的就是全部的贡献减第一个的贡献。
然后用个堆搞前 个即可。
(记得 要排序!!!!!!)
B:Connecting Two Barns
题目链接:luogu P7991
有个无向图有 个点, 条边,然后你可以加至多 条边,连接 的边的费用是 。
然后问你使得 连通的最小费用。
你考虑到如果是不连边就是 在同一个连通块。如果是连一条边就是 分别所在的连通块连接。
然后如果是两条边你就枚举中间中转的连通块搞。
然后两个连通块连边的最小费用的话你可以分别看 所在连通块到别的连通块的。
然后你可以把 的连通块的点都放进去一个数组里面排好序,然后你就直接 lower_bound 找到一个点附近的两个连接点,这样来算。
C:Convoluted Intervals
题目链接:luogu P7992
给你一些二元组 ,然后这些数都在
__EOF__

本文链接:https://www.cnblogs.com/Sakura-TJH/p/USACO21DEC_BS.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现