因为搬新机房所以题很友好?
T1:
大佬都用二分+贪心秒切了,只有我这只菜鸡先打了个状压,然后证出了一个小性质O(n^2)dp过的
T2:
考场上打了个恶心的状压,考后发现还没暴搜跑得快,emmm。。。
正解不考虑最优方案是啥,直接考虑每一条边的贡献。
设此边为(a,b),统计从a点来的关键点和b点来的关键点。
如果a>b,那么次边的贡献为b,即他的意义为,贪心的将a的联通块的点都尽量连出到b联通块,剩下的a联通块的点都互相连。
<树上问题的经典思路:把贡献考虑成每条边|点,那便不需要考虑最优策略具体是什么>
T3:
严重怀疑出题人并不会造数据,问最小生成树竟然给不联通图,卡掉20分,无f**k可说。
正解是跑全局的最小生成树,按其中的树边和非树边分类。
首先,tarjan判割桥就不解释了。
然后,非树边,考虑连接他的(a,b),找到最小生成树中a->b的路径上的最大值,他的答案为最大值-1。表示当(a,b)<max时,才能代替路径上的某条边来加入最小生成树。
最后,树边,和非树边类似,只不过找的是最小值。
可用树链剖分|树上倍增解决。
<没有考虑最小生成树的生成过程,而是把树建完以后的影响>
2019-09-17