萌新求助一道很nt的ds

学术版

听取MLE声一片 @ 2022-04-15 12:33:35

Rt,长度为 n 的数组,有这样几个操作:

1.把一个点更改为 1

2.把一个点更改为 0

3.把全部数更改为 1

4.把全部数更改为 0

5.询问全部1的个数

有什么线性做法吗?

我太菜了,轻喷


by Loser_King @ 2022-04-15 12:36:01

直接维护就好了吧,动态维护全局 cnt,全局直接打 tag,判断是否下传


by dehsirehC @ 2022-04-15 12:36:40

每个位置维护一下lazy还有没有用?


by xyf @ 2022-04-15 12:39:44

@听取MLE声一片 如果不是强制在线,随便切吧


by 听取MLE声一片 @ 2022-04-15 12:39:53

@Loser_King 怎么尽可能简单实现那?


by Loser_King @ 2022-04-15 12:40:22

@听取MLE声一片 稍等,我写写试试


by 听取MLE声一片 @ 2022-04-15 12:41:11

@MatrixQuickPow 肯定强制在线啊/kel


by Lynkcat @ 2022-04-15 12:43:03

@Loser_King 为啥还有下传???


by Loser_King @ 2022-04-15 12:44:46

草,不用维护 tag,傻了


by 听取MLE声一片 @ 2022-04-15 12:47:50

哦我傻了,大概明白了


by Lynkcat @ 2022-04-15 12:49:12

这里

考虑维护上一次全局修改的时间戳 tim,并且维护当前点上一次重构的时间戳再维护每个点的 0/1 即可,单次 O(1)。


| 下一页