https://www.luogu.com.cn/problem/P4314
先不考虑赋值操作,先拿个 20 分。
再考虑赋值操作对标记的影响,显然我们不能对每个状态开一个 vector 记录所有历史操作,但我们发现赋值操作可以清空前面的所有历史操作,且之后的加减操作可以和这个赋值操作合并。
因此我们只需要 (a, b) 两个数表示先加再赋值即可描述标记。
再讨论操作,对于加减操作,如果之前存在赋值,我们转化成赋值操作即可。
![]() |
某岛
… : "…アッカリ~ン . .. . " .. .
|
![]() |
![]() |
![]() |
|||
|
||||
![]() |
![]() |