T1:
? 分解出每个数的因数统计一下就行了,可以用hash表
?
T2:
? 按时间排序后做背包
? 发现单价值域太大没办法背包,于是将状态反转,改为对价值背包
? 背包的定义就变为获得i的价值所需的最小代价
? 回答时在背包数组上二分一下就行了
?
T3:
? 好题啊!
? 考虑将车速看作时间,边的l,r看作这条边可以通行的时间
? 然后最小到大枚举时间,求出当前可行的边所构成的森林中最大的直径
? 然而实际上并不是枚举
? 发现每个边影响的范围是一个区间,所以可以线段树分治,用可回退的并查集来维护树的直径
原文:https://www.cnblogs.com/Gkeng/p/11796225.html