摘要:
【CF995F】Cowmpany Cowmpensation 题面 树形结构,$n$个点,给每个节点分配工资$[1,d]$,子节点不能超过父亲节点的工资,问有多少种分配方案 其中$n\leq3000,d\leq10^9$ 题解 先上一个$O(nd)$的$dp$: 设$f[u][j]$表示点$u$分配 阅读全文
摘要:
【BZOJ3551】[ONTAK2010]Peaks加强版 题面 给你一个图,每次询问给定一个位置、长度和$k$,问从这个点出发,只能经过不大于这个长度的边,到达的点中点权第$k$大的点权 图的规模:$10^5$ 题解 考虑离线怎么做: 将所有询问存下来,按照边权排序 每次加边线段树合并查$kth$ 阅读全文
摘要:
【BZOJ2589】[SPOJ10707]Count on a tree II 题面 "bzoj" 题解 这题如果不强制在线就是一个很$sb$的莫队了,但是它强制在线啊$qaq$ 所以我们就用到了另一个东西:树分块 具体是怎么分块的呢:根据深度,从最深的叶子节点往上分,同一子树内的节点在一个块 比如 阅读全文
摘要:
【LG3206】[HNOI2010]城市建设 题面 "洛谷" 题解 有一种又好想、码得又舒服的做法叫线段树分治+$LCT$ 但是因为常数过大,无法跑过此题。 所以这里主要介绍另外一种玄学$cdq$分治 对时间进行分治 因为每次分治都必须要缩小数据规模 而我们这里貌似无法满足这个要求 引进了下面的玄学 阅读全文
摘要:
【LG4185】[USACO18JAN]MooTube 题面 "洛谷" 题解 先将所有操作和询问离线 然后按照边权从大到小将操作和询问排序 利用$two\;pointers$,每次扫到一个询问,将边权大于等于它的边的两点全部都并起来 因为边权大的满足,那么边权小的一定也能满足 对于每个询问,直接查它 阅读全文