2 月日记
2.7
开文。
2.10
9 号有事没回学校,今天回来。
早上教练安排做了 6 道远古 ICPC 题,因为太困只想出一道题,却因为极限答案爆 longlong 且空间只有 64MB 被卡,寄。
赛时想到的题:Gym - 100217I。
记 表示将 分成 个的方案数,分情况讨论:
-
如果 ,。。
-
否则,。
答案即为 。
赛后我补补补,现在(写日记)已经忘了好多思路。
经过讲题人在台上一番讲解和不等式推到,我们得到 的顺序是最优的,剩下的就是一个正常的背包然后记录方案。
记 表示当前在第 个环节,容错时间为 的答案,倒推分情况讨论完美解决和吃罚时和重开的转移:
-
完美解决:
-
吃罚时但是不可以继续走:
-
吃罚时但是需要重开:
但是我们发现, 转移时既需要参与计算,它本身也会被更新,所以我们二分 。
2.11
早上 %你赛。
T1 区间dp
T2 矩乘线段树
T3 神秘构造
T4 bfs + 最小生成树神秘图论
2.12
codeforces Round 1004 div.2 掉大分。
A
硬控我 35min。
B
神秘小贪心。
C
神秘小贪心,暴力可过。
D
神秘小交互,但是询问了 即可确定。
F
异或有一个性质:,可以从这里入手。
我们记 为 数组的前缀异或和,我们会发现每次操作后 ,所以说每次三元组的状态就是:
考虑它们从何转移而来,记 表示当前在 三元组中相等两数值为 的方案数。
首先对于 ,它是从 转移而来,根据异或的性质,,所以这里 。
对于另外两种,当 时,状态为 ,它可以从 任意一种转移过来,所以 ,当 时,它可以从 转移,这样有三种方案,也可以从 共两种方案,注意到都只和 有关,滚动数组优化,所以这样一番推导下方程就有了:
最后答案即为 。
数组开不下用 map 映射。
div.1 D1
记 表示第 层楼发射飞机 架,枚举发射的飞机数量,转移方程有:
当然你会发现方程缺了什么,注意到我们是从 次发射中选择 次,所以还需要一个系数 ,得到最终的柿子:
最后答案即为 。
学线段树合并ing。
2.13
李超线段树题单。
CF932F Escape Through Leaf
有一个显然的 dp,我们记 表示从 调到叶子的最小代价:
实际上我们要维护的就是斜率 ,截距 的直线在 处的最小值,上李超树 + 线段树合并维护。
P3521 [POI 2011] ROT-Tree Rotations
题目中逆序对有三种:
-
左子树。
-
右子树。
-
横跨左右子树。
显然交换左右子树的操作只会对情况 3 有影响,记 分别表示交换 / 不交换子树的逆序对个数, 为当前的左右子树, 表示节点的左右子树, 为左右子树大小:
答案即为 。
2.14
情人节。
上午 %你sin。
T1
神秘结论题。
T2
T3
T4
2.16
下午返校。
听 Jmr 讲了点分治。
2.17
做点分治ing
一个字形容,nan
P3806 【模板】点分治 1
板。
P4178 Tree
要用线段树维护区间 的答案。
P4149 [IOI 2011] Race
稍微变形,同时记路径上边数和权值。
P2664 树上游戏
在大脑极度不清醒的时候观察题解战胜的,寄。
P8726 [蓝桥杯 2020 省 AB3] 旅行家
记 表示在 号岛屿停下的最大 值:
注意到题目中 保证有序,只需要维护上凸包,果断单调队列斜率优化 过掉。
2.18
上午 %你,题比较难。
继续写淀粉质和李超树的题。
P3081 [USACO13MAR] Hill Walk G
如果说想从 的这座山跳到 的山,并且如果落到后继最高的山上,一定有 且在 处的纵坐标不大于 ,如果我们按 给线段排序,得到的就是连续的线段,每次插入线段到李超树的 ,查询 位置得到后继线段,这样如此下去直到无后继,统计即可,当然横坐标范围很大离散化,区间表示就用离散化后的。
晚上打 Edu,不要掉分不要掉分不要掉分不要掉分不要掉分不要掉分。
2.19
[空白.jpg]
2.20
上午 %你sin。
T1
解法整体最主要是证明期望的线性性。(期望可以看做概率成权值之和)
我们记 事件的期望为 。
证明:
考虑 的推导,记 表示所有 事件情况, 为概率:
证毕。
所以记答案期望为 :
其中 表示第 堆在第 堆之前被取走的概率,。
T2
去二份答案 可以取得 的好成绩,但是你会发现它是 的复杂度。
题解的神奇做法:你会发现随机遍历 使得当前答案更优的期望是 ,是调和级数所以是 的,然后我们令下一次的二分右端点为当前 ,这样就可以通过了。
nb.
T3
我会 !能够取得 的好成绩!
略。
P5377 [THUPC 2019] 鸽鸽的分割
打表找规律,你会发现方案数是一个四阶等差数列。
2.21
P5563 [Celeste-B] No More Running
对于经过 的路径,我们分为两类:
-
为点分治中心时, 到连通块其它节点的路径。
-
其它点分治中心遍历到 时的路径。
第一种很好去求,第二种暴力的话是 的,无法接受。
你会发现题目中说不能走回头路,考虑用数据结构维护 可以延展到的连通块,那么可以将第二种转换成两条第一种路径拼起来。
综上可得我们要求的是在模 意义下的 且 不在 的同一子树内,然后你会发现 ,也就说他会超出至多一次。
分情况讨论:
- 超出 次, 最大时原式最大。
- 超出 次, 最大时原式最大。
你会发现我们需要一个满足单调性的数据结构,每次二分找到最大的满足条件的值。
考虑使用 ,每次更新答案前先删除之前的连通块。
CF1303G Sum of Prefix Sums
点分治,考虑将所求路径拆成两条,长度分别为 ,点权分别为 序列。
题目中要求前缀和的和,记 为前缀和:
记 ,则所求路径权值根据上文所推式子:
你会发现我在这里把只跟 有关的踢掉了,因为点分治之后肯定是会遍历到的所以不用管。
然后你就能轻松看出这是一个一次函数,看来我们只需要在把式子放到李超树上维护即可,但是你要注意, 的路径权值可能和 的路径权值不同,所以正反都跑一遍。
UVA12161 铁人比赛 Ironman Race in Treeland
点分治!大力的点分治!啊哈哈哈!
然后呢,突然就不知道了(?
好像可以贪心?对于路径 ,记花费为 ,长度为 ,显然的,对于 的情况 一定是最优的。
这样做法就呼之欲出了(?
看来我们需要一个可以同时维护花费长度单调的数据结构,考虑使用 map,对于路径 ,我们每次查询满足 最大的 即可。
CF293E Close Vertices
显然,对于路径的限制条件多了一个。
采取了值域树状数组 + 双指针的操作,复杂度 。
然后就是点分治!大力的点分治!
2.23
打 usaco Sliver,证明了自己纯菜的成分。
T1
小清新贪心,人类智慧。
首先值从大到小下标从小到大排序,考虑怎么进行那一次更改位置最优,此时我们钦定当前一个候选的元素,我们去找下一个元素的位置,如果预备要更改元素在原数组中的下标比下一个元素大,并且当前候选元素的下标比下一个小,说明此时当前候选元素一定最优,将预备要更改的元素下标改成当前候选元素下标。
2.24
打了 1 月的 USACO。
要开始好好练思维了。
Anyway,听日式摇滚写代码确实不错。
2.25
%你sin。
T1
通过打表,我们发现:
你会发现 是等比数列,但是考场上的我并并不会等比数列求和。
看到这个式子我首先想到:一棵 层的满二叉树节点数为 。
这样就是 的情况,以此类推, 就是满三叉树,这样推出来通项 。
incredible.
利用之前学习的线性筛 ,我们成功做到了 的复杂度,你会发现 ,但是 时限,减少取模运算还是能过的。
拜谢 syq 同志 /bx /bx /bx /bx /bx /bx
T2
神秘题。
考虑从大到小插入每个点,于是只需要知道它有多少个位置可以插入,记数量为 ,如果当前加入
的点没有被钦定是叶结点,那么它不管插入在哪里都会让 恰好增加 ;如果当前插入的点被钦定了是
叶结点,那么它不管插入在哪里都会让 恰好减少 。
于是会发现,从大到小插入时每个点能被插入的位置数量都是固定的,乘起来即可。
复杂度 。
T4
你说的对,但是 syq 先手。
找规律题。
偷个懒
2.26
一上午写了 道做过的板子题,因为 Tarjan 成功的被我忘完了。
P11676 [USACO25JAN] DFS Order P
如果说原图没有边,那么最后要是 的 dfs 序这张图一定会变成一颗树。
由于子树中的 dfs 序连续,加上 的数据范围,也许可以区间 dp。
记 表示 dfs 序中 到 区间满足条件的最小代价:
但是它现在有边,既然有边那我们给它删成无边的就可以继续 dp 了。
我们会发现保证我们需要的是 dfs 树的前提下,多出来的一定是返祖边,这启发我们去修改转移式子,加上返祖边的影响。
dp 转移看做是合并 的两棵子树,这样一合并增加的返祖边就是 ,这样一来代价就是连续的区间,前缀和维护,只加负的。
P3919 P3834 主席树
学新东西了喵。
2.28
补了昨天晚上 CF 的题。
E
你会发现满足的是 的情况,这么看来我们选择权值树状数组维护。
遇 则 ,遇 则 ,每次查询和更新 位置的值。
P1407 [国家集训队] 稳定婚姻
2-SAT + 缩点,如果说一对夫妻在同一 则不安全。
P7251 [JSOI2014] 强连通图
对于第一个问题,答案就是最大的 的大小。
对于第二个问题,因为选择出度为 的点最后还是会要连入度为 的点,因此反而选择两者之中最大值最优。
(直到 3.7 我才意识到这是 2 月日记)
(移步 3月日记)
本文作者:Tomori's Blog
本文链接:https://www.cnblogs.com/Tomori0505/p/18705034
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步