摘要: 修改:两边暴力重构,中间打标记。复杂度:O(n0.5) 查询:中间二分两边暴力。O(n0.5logn0.5) 总时间复杂度O(n*n0.5logn0.5) 空间复杂度是n级别的 标记不用下传因为标记不用下传也没时间下传,如果在访问时下传就造成更棘手的不整块,如果累加式下传不好记录,所以就带着就行。 阅读全文
posted @ 2017-06-14 11:01 TS_Hugh 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 这个题体现了分块不只是最大值最小值众数次数,而是一种清真的思想。 我们把整个序列分块,在每个块里处理每个位置跳出这个块的次数和跳出的位置,那么每次修改n0.5,每次查询也是,那么O(m* n0.5)的复杂度是可以的. 阅读全文
posted @ 2017-06-14 08:46 TS_Hugh 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 这个,要处理各个数的话得先离散,我用的桶。 我们先把每个块里的和每个块区间的众数找出来,那么在查询的时候,可能成为[l,r]区间的众数的数只有中间区间的众数和两边的数。 证明:若不是这里的数连区间的众数都达不到。 我已开始把某个离散后的值当成了坐标,调了好久....... 阅读全文
posted @ 2017-06-14 07:35 TS_Hugh 阅读(369) 评论(0) 推荐(0) 编辑