「POI2014」MRO-Ant colony 题解

主要思路

如果你正确理解了题意,那么就不难想到用\(O(n)\)的 DFS 求出每一个叶子结点的上下界(然后我就没想了)。二分区间上的两个端点来获得总长度即可。

Continue reading →

树上启发式合并 | DSU on tree

简述

树的结构让某些数据难以直接快速合并,所以就有了树上启发式合并,一种把合并时间为\(O(n)\)优化成\(O(\log n)\)的神奇方式。如果您先前学习过树链剖分,那么学习树上启发式合并就非常简单了。

Continue reading →

Codeforces 1239A:Ivan the Fool and the Probability Theory 题解

主要思路

首先需要知道一个性质:如果第一行和第一列确定,那么这个方案就已经完全确定了。这个可以用归纳法证明:

证明  如果格子\((i – 1, j)\)、\((i, j – 1)\)和\((i – 1, j – 1)\)的颜色确定,那么显然\((i, j)\)的颜色就能被唯一确定。如果第一行和第一列可以被确定,那么根据上述描述,便可生成一个唯一的方案。

所以欲记录方案的个数,那么就要记录合法的第一行和第一列的方案数。这样我们把问题转换到了长条上。

设置\(dp[i][0/1][0/1]\)为到第\(i\)位是否连续、最后一位填的数字。那么转移非常自然,可以自行推导(确实啊)。

最后答案就是把所有情况加起来,再减去非法的两种情况(也就是左上角的三格同色的情况)。

Continue reading →

「杂题集」- 2019年10月16日

挑战

最后发现就是分块大暴力,要是有更有意思的解法就好了(不过这个信息本来就没有优秀的合并方式,或者用一种二位在线偏序结构倒是可以解决这个问题)。

Continue reading →

阶段性总结:十月中

九月份的总结忘了写,然后拖到现在,不如改名叫阶段性总结算了。


从纪中回来之后学了两周的文化课,把九月份的东西大概提前猛的学了一下(最后发现数学和化学的速度超出了预期,有点吃亏,其他都上得差不多,联赛回来估计文化课就会炸的稀巴烂)。文化课凉了之后,因为自己太菜的缘故,lcx 就把我催回来学竞赛了。

回来学竞赛打了几场模拟赛,感觉手感要比在纪中好不少,至少不会去刷 Twitter 了;分数也上去了蛮多,但是不太稳定,主要源于心态,现在也慢慢的调节过来了(不过也没什么好调节的,mousezt 这种东西听着都想笑)。刷了一些套路题,也打了一些 CF 的题目,手感越来越好。但是有一些能被想到,细节很多的东西就基本上没辙了:关键还是搞不出来,也没有运用到一些算法的本质。接下来的主要重心还是在 USACO 的一些题还有历年的模拟赛题上吧,还有就是拓宽阅读的范围,稳定复习,温习基础。

这一个月多也反思了很多事情,感觉浪费了一年的光阴,学了很多脱离实际的东西。当然,我认为目前补救还是比较及时的,所以尽量把损失控制到最小吧。联赛好,那就继续快乐;联赛不好,就回17班快乐去,也不赖,毕竟除了语文,其他学起来都还是很开心的,语文虚心跟着陈小荣恶补一下,回到正常线上也比较可期(那也不一定,直面讨厌多年的东西对我而言仍是一件非常困难的事情)。

后悔没有跟一些神仙打好关系,也短视了单人训练的局限性;除此之外也花了几个月认识到了一些人奇怪的心态,也照出了我的心理缺点(fixed weeks ago)。

这一个月也感叹时间流逝之快:一年前 DOFY 和 lornd 还在跟我们讲课,到如今滨江机房的冷清,和青山湖校区的蓬勃。新高一挺好,希望他们也会越来越努力。唉,学长们都退役了,也都轮到我了。

各位 CSP 2019 再见,希望神仙可以最终都能得到自己心愿的成绩。