晚测7

A:kill

贪心
发现答案一定在一个挨着S的连续段里
不然显然可以交换使得答案更优
所以直接(n^2)暴力枚举每一段就好了

其实也可以直接贪
暴力枚举每一种情况就好了
考场就是这么写的
然后37ms A掉了




B:乌鸦喝水

(n^2) 暴力有50分
链表优化一下有95

正解是把所有水缸按照喝不到的次数排序
然后显然较少次数喝不到的水缸一定先喝不到 而且就没用了
把每个水缸喝不到了看作一个事件
要求的其实就是两个事件之间的间隔时间对答案的贡献
开一个vec记录一下当前还有多少水缸能喝到水
每轮能喝到的水的次数就是vec的size
所以每次都一轮一轮的跑显然太浪费了
可以直接用差的时间去处理size 计算要多少轮之后当前水缸就喝不到了
然后再计算这些轮后的位置到了哪里
就可以每次递推了

原文地址:https://www.cnblogs.com/2004-08-20/p/13821974.html