摘要: 读题找到无解的情况:大头吃掉的$K$个果子后,剩下的$N - K$个果子不够其他的$M-1$个头分,即$N-K<M-1$ 题目中只限制除了大头外的头要吃至少一个果子,也就是说一段树枝相连的两个果子若被同一个头吃掉,则只会被大头吃掉,否则不是最优($M=2$的情况除外)。 证明( 口胡): 如果出现树 阅读全文
posted @ 2021-01-12 09:58 Dickson 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 矩阵优化DP 原题链接 矩阵乘法几乎不会,我瞎扯证明了1个小时才差不多搞明白怎么弄。 \(DP\) 设$\large dp_{i,j}$表示跳到第$i$行第$j$列的方案数。 于是有了一个初步的状态转移方程(假设$i,j$都不会越界): \(\large dp_{i,j}=dp_{i-1,j-1}+ 阅读全文
posted @ 2020-12-13 22:19 Dickson 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 原题链接 题意: 跟题目名称一样 解法: 反转链表(单向),就是让每个元素的$next$指向的元素的$next$只回来。 那就新建一个指针来记录上个元素,进行操作。 但是上面操作有一点小问题:无法向后转移。 解决方案:直接再开一个指针来记录当前元素的$next$即可。 代码(c++): class 阅读全文
posted @ 2020-12-01 21:34 Dickson 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 其实没有想象的那么高端 给你一堆平面内的矩形,求他们的面积并(就是覆盖的面积) 如果直接每次覆盖记录会导致部分面积重复计算,我们考录扫描线算法 图是luogu上找的( 就这么张图吧: 从图中可以看到会有重复覆盖的地方 如果把它分割一下: 然后可以把问题分到每两条线之间求面积在加起来,就不会出现算重的 阅读全文
posted @ 2020-10-15 15:11 Dickson 阅读(119) 评论(0) 推荐(0) 编辑