2022.7.19 做题记录
7.20 发现昨天记录忘发了,补上
今天出去办了一堆事啊(比如给新手机办手机卡!!),回家已经挺晚了,随几个萌萌题做两下
CF609E MST for each Edge Present 5
你有一个 点 边的无向图,第 条边 有边权 。
对于每条边 ,你需要求出来:包含第 条边的生成树的树上边权之和最小是多少。
。
原题目名称叫 Minimum spanning tree for each edge,实在有点长,这里简化了一下=_=
考虑先随便求一个最小生成树,然后加入一条非树边 时,相当于要在树上 路径上选一条边删掉,再加入当前的边 。
那么显然我们应该选边权最大的边,问题就转化为链上边权 ,这个问题有一万种做法。于是就做完了。
CF1706D Chopping Carrots Present 7.0
给定正整数 ,对于一个序列 ,满足 ,我们称其「代价」为
你需要求出代价最小的序列的代价是多少。。
由数论分块的常见结论我们知道每个 只会变成最多 种数。
因此把这些数都找出来,类似2021 联合省选 D1T1 卡牌游戏的做法,在值域上做个双指针就行了。
时间复杂度 ,空间复杂度容易优化到 。我偷懒没写空间 的做法((
详细看代码:AC Code
场上因为多测没请干净 wa 了,到最后也没调出来。。。垃圾多测
CF510D Fox And Jumping Future 7.5
有 种技能,和一个无限长的纸带。
你可以花 的代价学习第 种技能,学习后就可以随时向左或向右跳 格(不限次数)。
问你至少要花多少代价才能到达所有地方,无解输出 。
。
由 定理我们知道相当于要选出来若干个数使得它们的 的 。
考虑跑一个类似最短路的东西,每次用 更新 ,不断进行松弛, 就是最终的答案。
粗略分析一下,能到达一个点 当且仅当 是某个 的约数,因此总点数大概是 。
实际上大部分情况下 ,我们可以直接把点数看做 。由于 均为正,可以使用 。
复杂度看上去挺对的,反正能过(
AC Code <- 昨天晚上写挂了,调不出来睡了,第二天起来一下子就发现错了2333
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端