03 2020 档案
摘要:长链剖分模板?在每个链顶开一个 vector 记录,合并链的时候每加一次更新一下这条链的答案就可以了。 不得不说 vector 的空间常数好大啊 #include<cstdio> #include<vector> #define For(i,A,B) for(i=(A);i<=(B);++i) #d
阅读全文
摘要:求一个联通图的独立集个数(包括空集) 对于树的情况,记 $dp_{u,0/1}$ 为以 $u$ 为根的子树在不选/选 $u$ 时的独立集数量,转移方程是显然的: $$dp_{u,0}=\prod\limits_{v\in son_u}(dp_{v,0}+dp_{v,1})$$ $$dp_{u,1}=
阅读全文
摘要:为了学长链剖分开的题,结果还是忍不住写了个线段树合并 首先不难发现:$b$ 要么是 $a$ 的祖先,要么是 $a$ 的后代。 $b$ 是 $a$ 的祖先很好弄,因为 $c$ 的数量始终等于 $size_a-1$;对于 $b$ 要么是 $a$ 的后代的情况,那么就是求 $a$ 的子树中和它深度差不超过
阅读全文
摘要:upd: 它掉出 Ynoi 了,有时间了更几个真正的 Ynoi 吧。 Ynoi难得的很好写的题。主要考察两角和公式: $\sin(\alpha+\beta)=\sin\alpha\cos\beta+\cos\alpha\sin\beta$ $\cos(\alpha+\beta)=\cos\alpha
阅读全文
摘要:首先考虑一下:如果我们知道要买(或送)哪几袋米,如何确保自己的钱够用? 显然应该买最便宜的几个,剩下的送。 所以我们可以枚举一个$p$,比$p$便宜的米用买的方式,比$p$贵的米用送的方式,不会遗漏最优解。把米按价格排序用背包就可以做到$O(n^2m)$。 #include<cstdio> #inc
阅读全文

浙公网安备 33010602011771号