深深的感受到了自己的水
--------------------------------------------------------------------------------------------------------------------------
T1:
题意:一棵树,有k个关键点,求分成连通块,每块至少一个关键点,使连通块最大最小。
woc我为啥没想到二分,不懂啊,考试的时候是在梦游吗
二分后判断是否可行
就是一个简单的树上的贪心
可以先bfs一遍倒着来,max表示改点最多能连几个点,sum表示实际有几个点
当改点是关键点时max=k-1 否则sum++
判断改点f=max>=sum?max-sum:-sum
if(f<0)sum[fa[x]]-=f;
else f更新max[fa[x]] //这里是取max,因为两个联通块是不可能交的
--------------------------------------------------------------------------------------------------------------------------
T2:
我只会40~60分做法
--------------------------------------------------------------------------------------------------------------------------
T3:
有20分是kmp,其他不会QAQ