[AGC003E] Sequential operations on Sequence 题解

发布时间 2023-08-18 10:15:42作者: Al_lA

神仙思维题,那我的评价是太妙了。

思路

我们发现正的十分难以维护这个过程。

考虑可以倒着进行这个操作。

容易发现对于整块,我们找到在前面第一个小于它的 \(a_i\)

然后就会有一个贡献的转移,\(f_i=f_{now}\times \frac{a_{now}}{a_i}\)

至于散块,我们发现可以通过这样的递归继续处理。

即,\(\text{solve}(a_{now}\bmod a_i)\)

至于转移的时候还有一些系数上的问题,仔细处理一下即可。

最后使用差分进行区间加的操作。

答案再算一遍前缀和即可。

Code

AC记录