主席树区间修改能不标记永久化吗?
比如这样一个问题:
有一个数列 A=(a1,a2⋯an)。
记数列 A 最一开始是版本 0。
有 m 个操作,每个操作是以下这几种中的一个:
-
建立一个新版本,使得这个版本是上一个版本基础上将 l∼r 的所有位置上的数 +v 得到的数列。
-
建立一个新版本,使得这个版本是上一个版本基础上将 l∼r 的所有位置上的数 ×v 得到的数列。
-
查询第 i 个版本 l∼r 的所有数的和。
n,m≤105。
如果没有操作 2,可以使用标记永久化。但是有操作 2 应该就不行了。那么如果不能使用标记永久化,怎么做到主席树区间修改呢?怎么避免复杂度变劣为 O(mnlogn) 呢?
或者这个问题无解