WC 2010
T1
求长度在[L,R]之间的路劲使得平均权值最大
考虑二分答案,将所有边权减去该值,就使结果变成了求一条长度在[L,R]的路径,使得路劲权值和最大
将树分支,考虑用重心点分。对于节点r,算出r到其子节点 r1 ... rs 中路径长度为i 的值,算的时候,用单调队列优化
树分治的常熟比二分大,所以先二分再分治
需要的知识:二分 + 树分治 + 单调队列
T2
凸包什么的,不知道啦~
T3
1 ~ 3 :暴力搜索
4 : 值相邻的可以交换,那么 a[i] 表示数字 i 的位置,然后冒泡排序
5 : 所有点都连通,那么每次找到一个环,然后每次交换环上两点,使的至少一个归位
6 ~ 7:每个都可以和数字 1 换,那么每次找到一个环,然后将上面的数字和 1 交换,每次使的至少一个归位
8 ~ 10 :将图建好后是一个堆,(并不知道有没有完美算法),因为 lim > 2nlogn ,所以可以每次修改一条链。【跳LCA的时候两层循环只在里层写了一个break,调了一天TAT】