P14400 [JOISC 2016] 回转寿司 / Sushi
与值域集平移有关的问题显然考虑不了 polylog 做法,直接思考根号做法。
环是假的,拆开即可。
注意到每次经过一个整块相当于可能取出其中的最大值,但是我们不知道内部数值如何变化,先别急。散块如果不能支持维护每个位置是啥那么也做不了。
细品一下这个操作,发现有交换律,直接用个小根堆记录下来每次重构即可,遇到一个 \(a_i\) 比堆顶大就交换即可。
时间复杂度根号 log。
与值域集平移有关的问题显然考虑不了 polylog 做法,直接思考根号做法。
环是假的,拆开即可。
注意到每次经过一个整块相当于可能取出其中的最大值,但是我们不知道内部数值如何变化,先别急。散块如果不能支持维护每个位置是啥那么也做不了。
细品一下这个操作,发现有交换律,直接用个小根堆记录下来每次重构即可,遇到一个 \(a_i\) 比堆顶大就交换即可。
时间复杂度根号 log。