做题过程
看题,发现都很好想出大致的思路。
T1
费用流,
T2
sa+
线段树,
T3
搜索。
先打了
T1
的费用流,打完、对拍、测大数据,发现没什么问题,就去看
T2
。
T2
也很快打完、对拍、测大数据,没什么问题。
T3
打暴力,加上状压优化,测了样例和一些手工数据,跑得很快,也没什么错,就没管了。
这时11:00,回头看
T1
,发现我出的数据不好,没有比较平均地分配流量。然后我改了一下
makedata
,再测大数据,竟然要
2s
!这有点小尴尬。我立马尝试加点优化,比如优化
bool
数组清零。但是,实测发现并没什么卵用。然后我想,这道题很特殊,它是个完全图,还给了
sum(ai)≤1000000
,是不是可以
dp
呢?然后我想了很久,感觉并不怎么能
dp
,最后只好弃疗。
结果
40+100+0
T1
可以用费用流动态加边。我当时也有点这方面的想法,但是没深想。
T3
暴力竟然没分…正解是个我不会的东西。
总结
测极限数据要注意数据是否“极限”。
费用流动态加边、加点都是常用的优化方法。