当前位置: 代码迷 >> 综合 >> 【IOI2014】bzoj4367 holiday
  详细解决方案

【IOI2014】bzoj4367 holiday

热度:14   发布时间:2024-01-13 10:19:19.0

最优方案一定是先向一边走,然后掉头回来,再向另一边走停在最远处,剩下的时间取走一路上的最大值。
我们用 f[0/1][0/1][i] 表示用掉时间 i ,向左或向右,回到出发点或不回到,得到的最大收益。不难发现,这四个值求法类似。
如果知道到达的最远点的话,能取走的位置的个数是确定的。我么可以用主席树查询区间 k 大值和来 O(logn) 求出答案。而显然决策点是单调的,也就是说,时间越长,走到的最远点越远。于是我们可以分治求解,定义