摘要:
题面传送门 首先这种生成树计数想到Prufer序列。 然后因为度数为$d_i$的点会在Prufer序列中出现$d_i-1$次所以直接重排列公式即可。 然而这个没有模数什么的。 于是就要分解完质因数后再乘。 时间复杂度$O(nlogn)$ code: #include <vector> #includ 阅读全文
摘要:
题面传送门 挺水的题,但是没开long long就WA了一发。 首先我们考虑如何确定最佳烘焙顺序,这样才能用乱七八糟的数据结构维护。 设第$i$个蛋糕烘焙完的时间是$t_i$,那么这个蛋糕的费用就是$l_i-t_i$ 把全部加在一起我们就可以发现我们其实可以把这两个分开算,即用$SumL$减去$Su 阅读全文
摘要:
题面传送门 这个东西主要用于生成树计数一类问题。 对于一个$n$个点的树,它的Prufer序列长度为$n-2$且这两者一一对应。 所以这个就很好解释了$n$个点生成树为$n^$个。 一棵树转化成prufer序列是这样的: 找到一个编号最小的叶子节点,将这个叶子节点的父亲加入,并删除这个叶子节点,直到 阅读全文