AtCoder Beginner Contest 303
1|0A - Similar String
2|0B - Discord
3|0C - Dash
模拟就好了,注意每个点的补给只能用一次
4|0D - Shift vs. CapsLock
表示前位,且当前CapsLock没按下时的最小花费,表示前位,且当前CapsLock按下时的最小花费。
然后模拟转移的过程即可。
5|0E - A Gift From the Stars
我们把星星的中间的点叫做 root 点,我们的任务就是找到所有的 root 点,并且要输出 root 点的度数。
首先我们把最终的树拿出来,所有的叶子点走一步就一定是 root 点 ,而 root 点链接的所有的点都是星星的叶子点,如果星星的叶子点的度数不为 1,就说明了这个星星的叶子点和其他的星星的叶子点相连。
这样的话我们通过一个类似求拓扑序的方式就可以找到所有的 root 点了。
然后我们发现所有的图其实都是这种样子的。所以从选择任何一个叶子点作为跟求一遍深度,所有深度为的点都一定是 root 点。
6|0F - Damage over Time
首先这道题的难点在于攻击的持续时间无法确定。所以我们考虑二分的方式来枚举攻击的时间。
我们将技能按照升序排列。如果剩余时间那么技能造成的伤害就是,反之伤害就是
这样的话我们维护前缀的最大值和后缀的最大值。这样的话我们就可以选择两种中伤害较大的部分。
如果我们选择的情况,那么我们就持续使用次技能。这样造成的伤害最大,之后就只能使用第二种技能。
如果我们使用第二种技能,我们持续使用$cnt= t-\left \lfloor \frac{max1}{d_i} \right \rfloor max1d_i\frac{cnt(t+t+1-cnt)}{x}$
__EOF__

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