摘要:
题面传送门 这个一眼分数规划然后转化成树上长度在$[L,R]$之间的最长路径问题。 这个东西可以长链剖分解决,就是像重链剖分一样用线段树维护,然后轻儿子暴力查找和加入即可。 注意不要忘了一条链的情况。 时间复杂度$O(nlognlogw)$ code: #include<bits/stdc++.h> 阅读全文
摘要:
A 刚开始其实并不会然后看了看样例发现自己会了。 大概就是把最大的拿出来然后剩下的放一起,正确性易证。 code: using namespace std; int T,n,x;ll Maxn,ToT; int main(){ scanf("%d",&T);while(T--){ scanf("%d 阅读全文
摘要:
题面传送门 这道题形象地给我们展示了DAG下支配树地求法。 我们建立一棵树,每个点$u$的父亲$fa_u$表示如果$fa_u$灭绝了,$u$一定灭绝。容易发现答案就是子树节点个数-1 考虑这个东西怎么求。 我们从入度为$0$的点出发,对于一个点,它的父亲是在DAG上所有儿子在支配树上lca,因为只有 阅读全文