线段树
sunrainchy
这个作者很懒,什么都没留下…
展开
-
HDU 1754 I Hate It(线段树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754题目比较简单裸线段树,注意在查询时根据已经查询出来的结果进行优化其实写这个题目的目的是测试一下用数组下标写的线段树快,还是用指针速度快,结果这个题目测试出来的结果一样,都是500ms,不知道这个算是没测出结果还是说结果就是两者速度差不多!数组下标:#include原创 2013-08-11 15:12:34 · 601 阅读 · 0 评论 -
HDU 3277 City Horizon(线段树 + 离散化)
题目链接:http://poj.org/problem?id=3277这个题目算是我真正意义上做的第一个离散化和线段树结合的题目,做了很长时间,不断打补丁最终才AC,从这个题目中我学到了很多1、离散化的思想2、线段树的数组下标建树方式(以前全部都是在数组上用指针建立树)3、L>>1+1是先做1+1,也就是说L>>1+1 L>>2 ,被这个东西坑了好长时间,所以不十分熟悉的原创 2013-08-15 10:47:02 · 751 阅读 · 0 评论 -
HDU 4828 Coder(线段树 + 离散化)
这个题目和平时的有点不一样,平时的都是很普通的查询,这次查询的下标号会变,给线段树造成一定的困扰,其实可以分区间来避免这个下标变化的问题根节点的值肯定是有子节点的值来确定了,那么我么就这样,维护5个sum值,分别是除5余数为1 2 3 4 0的和,由于所有数字都在int范围内,所以比较大,我们显然不能直接建立线段树,我们可以等待全部输入完成之后建立离线算法对所有数字进行离散化,完了建立线段原创 2013-08-15 18:08:12 · 723 阅读 · 0 评论 -
HDU 4027 Can you answer these queries?(线段树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4027这个题目想明白就是裸线段树,sqrt,每个节点最多更新次数有限,一旦变为1之后就不用更新了,利用这个特点就OK了!#include #include #include #include #include using namespace std;#define m原创 2013-08-31 21:13:40 · 690 阅读 · 0 评论 -
HDU 1542 Atlantis(线段树+离散化+扫描线)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1542这个题目之前用线段切割方法做过,觉得做法经典,但是如果数据量大的话线段切割就力不从心了,后来尝试用线段树来解决线段树方法也非常经典,由于开始有些细节没理解,用线段树一直都没能过,今天终于过了!按照y坐标进行离散化解,之后不断插入竖线,用一颗线段树维护就行了之前一直没能理解的是为什么原创 2013-09-09 18:41:40 · 738 阅读 · 0 评论