ACM-数据结构
文章平均质量分 79
codeforces_sphinx
还没挂~
展开
-
PKU 2528 线段树
/**************************************************************************************************** 离散化+线段树,离散化的时候注意,另外统计要用hash表~ ****************************************************************原创 2011-11-16 21:13:11 · 552 阅读 · 0 评论 -
HDU 4046 树状数组
/******************************************************************************* WA了N多次。。。结果是忘记初始化st数组了。。。悲剧得1B。。。 解法就是考虑修改位置id的字符,观察左右"wbw"是否被更改,如果被更改了,那么就更新下,这个地方要 特别小心。。。具体可以见代码~ ************原创 2012-01-07 23:49:12 · 1351 阅读 · 3 评论 -
HDU 4027 线段树
/******************************************************************************* 去年上海赛区网络赛线段树水题,首先虽然数据比较吓人,是64位int,但是开方不了几次,所以只要记录 那段区间的数时候都小于等于1就行了,0和1都不能再往下开方了,所以更新到底了~注意有x>y的情况。。。 **************原创 2012-01-09 23:46:15 · 843 阅读 · 0 评论 -
HDU 4031 树状数组 区间更新及点询问
/******************************************************************************* 去年成都赛区网络赛一道题,树状数组在区间更新中的应用。树状数组一般支持的是改点,查区间,但 是这道题要求的是改区间,查点,这就要变通一下,具体可以看代码,另外要考虑的一个问题是,如何统计? 这里的处理方法就是把总共的攻击次数-防御原创 2012-01-19 17:42:12 · 1436 阅读 · 0 评论 -
AVL C++实现(持续更新)
/* * ===================================================================================== * * Filename: avl.cpp * * Description: AVL借鉴Mark Allen Weiss的《数据结构与算法分析C++描述》跟网上 * 一些大牛原创 2012-02-04 23:13:44 · 866 阅读 · 0 评论 -
AVL类模板C++(持续更新)
/* * ===================================================================================== * * Filename: avl_tree.h * * Description: * * Version: 1.0 * Created: 201原创 2012-02-05 14:15:32 · 1100 阅读 · 0 评论 -
HDU 4007 线扫描
/******************************************************************************* 网络赛水题,线扫描两下就完了,从左至右,从上至下。。。蛋疼的课设+期末考试终于结束了! ***********************************************************************原创 2011-12-31 15:38:37 · 660 阅读 · 1 评论 -
HDU 1512 左式堆 + 并查集
/* * ===================================================================================== * * Filename: hdu1512.cpp * * Description: Leftist Heap + Union Find Set * * Version原创 2012-02-19 23:31:46 · 1519 阅读 · 0 评论 -
ZOJ 2859 二维RMQ
// ===================================================================================== // // Filename: zoj2859.cpp // // Description: 2D RMQ -- Orz...卡了输出... // // Version: 1.0原创 2012-03-03 13:14:03 · 1094 阅读 · 0 评论 -
HDU 3656 DLX重复覆盖
/********************************************************************************* 纠结了良久,这个题是DLX的重复覆盖问题,以前还没见过,最后套了晓天大牛的模板,水过了。 还是模板题。。。因为最后的答案必然是某两点的距离,所以离散化一下所有距离后二分再套用DLX 重复覆盖模板就能AC了~赞一下神函数uniq原创 2011-09-01 10:07:13 · 1515 阅读 · 0 评论 -
HDU 2896 AC自动机
/**************************************************************************************************** 改了下HDU2222的代码,今天才知道原来可见的ASCII码是128个,害得我MLE了一次~ ***********************************************原创 2011-10-04 22:18:44 · 483 阅读 · 0 评论 -
HDU 3065 AC自动机
/**************************************************************************************************** AC自动机,发现了一个不容易察觉的指针bug,不过不知道到底是怎么回事。。。 *******************************************************原创 2011-10-18 22:01:35 · 440 阅读 · 0 评论 -
HDU 2222 AC自动机
/**************************************************************************************************** HDU最2的题目~AC自动机模板,根据Racebug的模板改的,结果改了下140ms过的~YM Racebug~ *************************************原创 2011-10-04 21:52:19 · 736 阅读 · 2 评论 -
HDU 1199 离散化 很阴险
/**************************************************************************************************** A了一年多才过。。。离散化里面非常阴险的一种情况,就是给定一个区间[a, b]那么你放进arr数组中的应该是几个数呢? 很多人都以为是两个数a和b,实际上应该是四个数a, b, a - 1原创 2011-11-16 16:30:25 · 1049 阅读 · 0 评论 -
HDU 3308 线段树+区间合并
/**************************************************************************************************** 尼玛。。。一句话没加能WA一个礼拜。。。线段树+区间合并,主要是区间合并的细节问题。。。 *************************************************原创 2011-11-25 23:55:46 · 644 阅读 · 1 评论 -
PKU 2777 线段树
/**************************************************************************************************** 这题还学了不少思想~用二进制数位统计颜色个数是个亮点~ ******************************************************************原创 2011-11-16 14:23:16 · 897 阅读 · 2 评论 -
HDU 4123 树状DP+RMQ
/****************************************************************************************************************** 尼玛。。。神题。。。居然能卡RMQ的log2的。。。解法就是先用树状DP预处理整棵树,得到每个节点距离其他节点的最大值, 这个时间复杂度是O(n),然后在得到的原创 2011-11-27 21:11:14 · 1399 阅读 · 1 评论 -
PKU 3468 线段树
/**************************************************************************************************** 从NotOnlySuccess的blog上开始重学线段树。。。这个是线段树中延迟标记的运用~ ***********************************************原创 2011-11-16 15:48:59 · 854 阅读 · 1 评论 -
HDU 1403 Suffix Array
/*********************************************************************************** 用Gvim写的, 解法就是求出后缀数组后,算h值最大,并且在'#'两侧的两个串 *********************************************************************原创 2011-11-12 15:38:35 · 894 阅读 · 0 评论 -
Size Balanced Tree(SBT) 类模板C++实现(持续更新)
Size Balanced Tree是OI神犇陈启峰发明的,据说是目前最高效的二叉查找树,搞了好长时间终于弄出来了~这个版本的SBT本来是打算用来实现STL的set的,所以树中不存在两个键值一样的元素,当然改成multiset那样的也不是很麻烦~原本按自己的理解想设计自底向上调整的SBT,结果最后发现这样的SBT有很大的问题最简单的例子就是如果插入的数据是单调有序的,那么显然这棵SBT就会严重倾向原创 2012-02-09 21:19:38 · 3540 阅读 · 3 评论