
数据结构
luSpet
go、python后端开发
展开
-
POJ 2528 Mayor's posters(线段树)
题目大意: 每次往墙上li - ri的范围涂色,每次涂得颜色不一样,后涂的会覆盖前面的,求最终墙上有几种颜色 思路: 将所有端点离散化建立一课线段树,树上每个节点代表这个节点覆盖的范围以及是否被涂色,逆序将所有序列覆盖线段树上的节点,若有节点是空的,则代表最终有这个颜色,标记覆盖后的节点,若没有可以覆盖的节点,则此颜色最终不会出现 代码: #include<cstdio> ...原创 2019-02-14 22:07:30 · 165 阅读 · 0 评论 -
ZOJ 1610 Count the Colors (线段树)
题目大意: 每次给[l,r)区间涂色c,后涂覆盖之前的,求最后有哪些颜色,分别有多少段 思路: 区间赋值,用线段树。 PS:每次涂色是 l ~ r 的区间,而不是涂点,最开始一直看不懂样例,看了大佬们的题解才发现题目意思理解错了。所以将保存颜色的color[i]定义为[i,i+1)的颜色,故每次更新操作更新的区间是 [l, r - 1] 代码: #include<cstdio&...原创 2019-02-15 01:34:52 · 248 阅读 · 0 评论 -
HDU 1540 Tunnel Warfare (线段树)
题意: 有n个节点m次操作,操作有:D切断某个节点,R:恢复上次切断的节点,Q:询问某节点所在段的联通节点数目 思路: 对区间的各种操作与查询,考虑用线段树。 切断与恢复与线段树update的基本操作类似,查询与平常的求和不同,要先判断当前节点与询问节点间是否联通再去求和 PS:切断可以切断已经切断的点,恢复只用一次,且恢复上次切断操作的点 代码: (询问没想到好的办法,感觉我写的好...原创 2019-02-16 15:04:57 · 181 阅读 · 1 评论