9 月做题记录
CF1630D *2400
记
然后
CF1619H *2400
首先这东西一定是个置换环。如果没有交换操作很 naive,考虑怎么维护这个交换操作。
记
单次查询是
取
CF1585E *2400
CF906C *2400
这个题没有
直接记
CF342E *2400
考虑两种暴力。
第一种是把所有红点取出来进行 bfs。
第二种是把和所有红点就行bfs。
考虑对操作分块。
对于之前的整块,进行第一种暴力。单次 bfs
对于当前的散块,取块内所有红点进行 lca。
最后的复杂度
P5443 紫
跟上题一样,都是按操作分块然后暴力维护。
CF1083E *2400
多选一个矩形增加的贡献只与前一个相关。
然后直接 dp 就行,斜优一下就行了
CF145E *2400
维护一下
CF444C *2400
看到区间推平操作直接考虑珂朵莉树。线段树维护一下权值即可。
CF1340C *2400
考虑记
直接 01 bfs 即可。
CF815C *2400
首先那个关系建出来必定是棵树。
那么
树上背包即可。
CF379F *2400
考虑两棵树合并只要查
CF632E *2400
看这个数据范围和时限感觉
因为要满足恰好
CF220E *2400
发现区间长度越大越容易满足条件。那么对于左端点找一个最近的右端点即可。双指针扫一遍树状数组维护一下。
CF915F *2400
感觉这个 dsu 很难想到阿。思维还是太烂了。
考虑把式子的贡献拆成
AGC002D *2514
首先两点间最大值最小这个很容易想到重构树。
把边的编号当边权建出重构树,查一下最高能跑到的点即可。
CF1637F *2500
首先,所有塔必然在叶子节点。
然后以
然后直接 dp 就行。
CF1310D *2300
考虑给每个点随机染色。然后跑一遍
然后你发现重复上述过程一定次数出错的概率就非常小了。
ABC219G *2287
很妙阿,完全想不到。
对每个点的度进行根号分治。
若度数
若度数
CF338E *2600
令
考虑开一个
那么这段区间满足要求的情况就是对于任意前缀和都不小于
离散化 + 线段树。
CF1717E *2200
推式子。
CF1715E *2400
直接转移复杂度是
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】