ATCoder 1600-2400 乱做
ABC234E [dif:1637]
给你一个 个点 条边的图,设 表示 之间的最短路,问最多删几条边 仍然不变。。
跑 然后枚举每条边,对于每条边 枚举每个点 判断是否有满足 ,如果有的话这边就可以拜拜了。
注意 初始化时不要把 赋为 。这样的话如果满足上面这个判断条件,说明存在一条经过两条边或更多边的路径的长度和比这条边短。
如果一条最短路的话边肯定越多越好,考虑一下两条边 和 的和如果和 等长,那么 和 一定比 小,那样删掉 一定比删剩下两条中的一条优。
时间复杂度 。
ABC234F [dif:2125]
个数,第 个数的权值为 ,一个数被选中的概率为 。
求选择 次,恰好有 个不同的数的概率。对 取模。
设 表示前 个数选了 次有 个不同的数的概率。考虑枚举第 个数选了几次进行转移。
有
然后就做完了。。。
时间复杂度 。
ABC234G [dif:2032]
组询问,每次询问给定一个序列,初始只有一个数 ,每次向序列末尾加一个数 ,设当前末尾的数为 ,则 ,一共要加 次,求可能产生多少种不同的序列。
。
考虑预处理出 的答案,然后做一个前缀和,然后去枚举 (这一步是在确定第三个数可以填啥),然后对于每个 对应第二位可以填的数是 ,可直接算出有多少个数,直接暴力枚举一下即可。
时间复杂度 。
ABC238F [dif:2058]
有 个人,每个人有两个权值 ,保证序列 是一个 的排列。
现在让你选 个人,问方案数,对 取模。限制是不存在一个未选的人 和一个已选的人 满足 且 。
。
先按照第一关键字从小到大排序。
设 表示前 和里面选了 个未选择的人的最小值为 时的方案数。则有
答案为 。
第一维可以用滚动数组优化掉。
时间复杂度 。
ABC237F [dif:1857]
求满足下列条件的序列有多少种:长度为 ;每个元素的值满足 ;最长上升子序列的长度恰好为 。
。
设 表示前 个数,最长上升子序列为 的方案数。
则有转移方程:
考虑求 LIS (最长上升子序列)时那个 的做法,维护 LIS 每个位置的最小值。
由于这里 LIS 长度只有 且值域很小,直接将其设为状态维护即可。
时间复杂度为 。
ABC237G [dif:2088]
给你一个长度为 的排列, 次操作,一个数 。
操作分两种:区间升序排序 和 区间降序排序。
求最后 所在位置。
发现我们只需要关注与 的大小关系即可。
考虑这样一个做法,把 的数置为 ,其他为 ,然后用线段树维护区间覆盖和求和就可以简单维护。
再取一个序列把 的数置为 ,其他为 ,其他做法同上。
发现只有一处不同的地方,那便是 所在。
时间复杂度 。
ARC134D [dif:1998]
给你一个长度为 的序列 ,每次要同时选择 和 ,问得到的子序列(下标必须递增)的字典序最小是多少?
设 ,若 那么选它即可。
若 ,把所有 的元素选上是最优的。
再考虑选完这些元素之后,如果有 那么还要确定选他会不会更优。
时间复杂度 。
ABC235F [dif:2129]
告诉你有那几个数能用,然后求有多少 ,满足 中存在所有能用的数。
。
数位 DP 狗都不做。
(逮捕)
ABC234G [dif:2306]
给你一个长度为 的序列 ,可以把它随意分成若干段。设分成了 这几段,那么这次划分的贡献为:
其中 表示 这段中的最大值, 同理。
计算所有划分方案的价值和对 。
。
设 表示前 个元素构成的序列的所有划分方案的贡献和,则答案为 。
一个显然的 DP 是
考虑把 和 拆开,一个加一个减。
单独考虑 的贡献,每个 可以影响的是一段区间,可以对这段区间的 用前缀和处理然后直接 查询区间和。对于每个有贡献的 ,直接用单调栈维护即可。 的贡献同理。
时间复杂度 。
ARC136E [dif:3100]
给你 个点,每个点有点权。如果两个点 满足 且 ,则有连边 。选择一些点,使他们之间不可达,点权和尽可能大。求这个最大点权和。
。
可能能选。
剩下的,奇偶分类,偶数之间肯定有连边。对于奇数,设 表示 的最小质因数。
最先和他联通的偶数是 和 。
如果一个奇数 和他联通,那么 。
那奇数位置有贡献的区间为 。
偶数位置有贡献的区间为 。
在值域数组上差分统计,然后做个前缀和求最大值即可。
时间复杂度可以做到 。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现