2024.1.18 题选
2024.1.18 题选
早上 fzw 讲计数。我在学校。
CF870F Paths
自己想出的 *2700,但是不会一些细节。
考虑两个点之间的距离有哪几种情况
我们令
-
,一定有 ,因为不连通。 -
,一定有 ,因为一步到。 -
考虑
,设两个数的最小质因数为 ,显然
也就是说有如下几条边:
上述边可以转化成如下几种情况的路径。
-
,直接 , -
且 ,可以走 。 。 -
, 。
统计满足上述条件分别的二元组个数即可。
剩下的大力推式子即可。会发现答案所依赖的信息通过一次线性筛都可以算出来,所以时间复杂度
CF914F
我一开始以为 1kri 讲的是分块套后缀自动机。然后打算换题。然后 jzy 说这题一开始讲的是就 bitset。我就心安理得地把这题用 bitset 搞过去了。
一个经典 trick 是考虑一个字符串的匹配可以理解成字符出现位置构成的 bitset 形成的 and。当然你每一位都要向右移动若干位。
然后你维护一下这个bitset。至于区间,只需差分即可。时间复杂度理论上是
P5693 第六分块
dX 讲的恶心数据结构,里比较能写的。
考虑小白逛公园的做法。
对于区间
我们设这个线段树节点是
我们发现,如果决策出现变化,会影响所有取决于这个点的决策。如果暴力重构,时间复杂度
考虑决策发生变化当且仅当变化量超过某个阈值。
-
超过阈值,重构子树
-
不超过阈值,相当于直接区间加。
然后我们发现在两个信息合并时,阈值是往平面坐标轴上扔成直线以后的交点。然后你把维护的四个信息全部变成直线即可。
EI 通过复杂的势能分析,得到时间复杂度是
这种算法称为 KTT。该题是末日三问、[SNOI2020]区间和的弱化版。
something
事实上,还有昨天两题的,但昨天身体不太舒服,没写笔记,所以先摆了。
感觉做的题好难啊。你让我再写一遍,我也至多有五成把握能在合理时间内写出来。但是感觉也只有这样积累思路才能让自己厚起来。尽管最后这样难度的题依然未必能做出来,但它看起来确实可以为做题的一切(比如暴力 etc.)提供新思路,提供新视野(?
那就继续下去吧。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!