T1:
? 首先k一定大于等于0,因为如果是负数的话,那么就可以一直上下跳动,即出现负环
? 那么二分k就好了
?
T2:
? 首先可以将鸟看作静止,人在移动
? 考虑简单dp,设计\(f_i\)表示在考虑走到i并且打一枪能打到的数量
? 很容易可以想到转移方程:\(f_i=max_{i-j \geq k} \{ f_j + shoot_i \}\)
? 然后也很容易发现这是错的…… 发现如果一只鸟很长,长到大于k,那么它就有可能被计算两次
? 考虑怎么去重,发现一只鸟的贡献是连续的一段区间,那就用线段树维护从每个位置转移的贡献即可
?
T3:
? 有点懵,咕咕咕……
原文地址:https://www.cnblogs.com/Gkeng/p/11837000.html