首页 > 其他分享 >P6717

P6717

时间:2024-04-16 20:46:51浏览次数:14  
标签:尝试 log 分块 P6717 思路 维护

神秘题,我现在还没有理解这个东西的本质。

直接维护自然很寄,我们有两种思路:

  • 把 \(K\) 的限制转化掉,用数据结构维护之。
  • 弱化贡献,转化为单点极值。

对于第二种思路,我进行了这些尝试:

  • 转化为 \(a_x\) 加上 \([x-K+1,x-1]\) 的最大值。
  • 二分答案。
  • 尝试观察一次操作后的影响。

想了很久不会 qwq。其实是没有注意到经典算法运用的条件。

第一种尝试中没法做的根本原因在于,不能维护修改。

进一步的,是不能维护删除

这个时候思路就出来了。线段树分治即可。\(\mathcal O((n + q)\log n\log q)\)。

这个方法相对平凡,有没有厉害做法?

dottle 的题解中说明了,按 \(K\) 分块后答案一定包含某个段中的最大值。然而我并没有想清楚这个算法的本质,按 \(K\) 分块在我看来只是为了探寻隐含的性质,毕竟直接在原序列上分析很难得到。但是 motivation 是什么呢??!

相对来说 ღꦿ࿐ 大神的思路看起来更有迹可循。

标签:尝试,log,分块,P6717,思路,维护
From: https://www.cnblogs.com/663B/p/18139130

相关文章