算是蛮好的题。
首先
Lucky number
可以全部预处理出来,大概
105
的规模。
答案取的数字一定是个连续的区间,考虑我们其枚举右端点,左端点是有决策单调性的。就想到可以
2
-
剩下的问题就是如何快速判断一个区间是否合法了。
显然对于一个区间,肯定只进行左移或右移。所以可以分开算。设
Li
表示左端点小于
luckyi
的区间需要左移到
Luckyi
的总代价,
Ri
同理。
比较恶心的地方是预处理代价时会爆出
long long
,需要提前判断超过
K
<script type="math/tex" id="MathJax-Element-1020">K</script>,很麻烦。