摘要:
P3740 [HAOI2014] 贴海报 大意 每次用一个新数覆盖一段区间,最后问区间上有几种不同的数字。 思路 首先考虑用线段树做。 发现数据范围很大,但是实则不需要考虑啊,因为我们的海报的数量一定,可以考虑离散化去重,然后用线段树做。 每次更改一段区间的话,采用标记延迟下传的方式,如果在目标区间 阅读全文
posted @ 2025-12-12 21:44
To_Carpe_Diem
阅读(8)
评论(0)
推荐(0)
摘要:
[Non]动态数列II 大意 每次在一段序列的末尾加一个数 \(x\),每次查询序列从大到小排序后的第 \(x\) 个的数。 思路 考虑动态开点的权值线段树,由于不是每一个点都需要用,我们考虑用的时候再给他开出来。 直接在结构体里面存上你该点的左右儿子的编号。 一般来说我们动态开点都是在 pushd 阅读全文
posted @ 2025-12-12 21:33
To_Carpe_Diem
阅读(5)
评论(0)
推荐(0)
摘要:
[Non]动态数列I 大意 每次在一段序列的末尾加一个数 \(x\),每次查询序列从大到小排序后的第 \(x\) 个数。 思路 考虑权值线段树。 实际上我们只需要维护一个很大的桶,这个玩意就是权值线段树,我们只需要维护子树内有几个元素,如果是满足右区间大于等于 \(x\),就去右区间找,否则,去左区 阅读全文
posted @ 2025-12-12 21:19
To_Carpe_Diem
阅读(6)
评论(0)
推荐(0)
摘要:
[Non]区间平方和 大意 需要完成区间修改和区间查询平方和的功能。 思路 首先我们考虑用线段树维护,然后想想 pushup 和 pushdown 怎么写? 定义: sum, sumq。 显然有 pushup: t[u].sum = t[lc].sum + t[rc].sum; t[u].sumq 阅读全文
posted @ 2025-12-12 21:11
To_Carpe_Diem
阅读(10)
评论(0)
推荐(0)

浙公网安备 33010602011771号