数据结构
文章平均质量分 71
Jming_
Someday I will come back!
展开
-
树状数组优化 之 uva299
// [4/7/2014 Sjm]/*求解思路:*所求的交换个数 满足 ja[i] 的个数*若已知前 i-1 个数值中不大于 arr[i] 的数据个数为 bit[i]则利用 (i-1)-bit[i] 即可求出 满足 ja[i] 的个数,进而求出答案。定义: bit[i] := 查询的是前 arr[i] 项的和,代表了在数组的前 i-1 个数值中不大于 arr[i原创 2014-04-07 21:04:00 · 935 阅读 · 0 评论 -
Kmp 模板 之 hdu 1711 Number Sequence
初学 Kmp ,推荐 严蔚敏教授 的数据结构视频原创 2014-09-11 00:09:29 · 418 阅读 · 0 评论 -
线段树(成段更新) 之 poj 3468 A Simple Problem with Integers
// [7/29/2014 Sjm]/*线段树称断更新。。。关键lazy思想,保存增量,更新时只更新到某一段,不再向下更新,待再次更新或查询到此段时,对其子节点进行更新。。*/原创 2014-07-29 09:42:33 · 570 阅读 · 0 评论 -
逆序数 之 hdu 1394 Minimum Inversion Number
// [7/29/2014 Sjm]/*时间复杂度: O(nlogn)实现方式:树状数组 or 线段树逆序数:在一个排列中,若一对数,前面的数大于后一个数(即位置顺序和大小顺序相反),就称它们为一个逆序。排列中,逆序的总数即称为此排列的逆序数。 求逆序数方法:树状数组 或 线段树(1)树状数组实现方法:参见 树状数组优化 之 uva299 中的法一(2)线段树实现方法:在每插原创 2014-07-29 14:42:59 · 646 阅读 · 0 评论 -
字典树 之 poj 1056
// [7/5/2014 Sjm]/*字典树,找前缀。*/原创 2014-07-05 01:40:23 · 482 阅读 · 0 评论 -
字典树 之 hdu 4099
// [7/4/2014 Sjm]/*在此题上花了好久,最后在大牛提醒下才AC,还是要多见题型、多练啊。。。 如果接触字典树,对于此题,大体的思路会有的1)建立字典树:根据前 100000 斐波那契数2)根据输入的数字串去字典树中搜索。 需要解决的问题:1)字典树结构体中应加入一个 number ,记录是最先到达此处的斐波那契数的标号2)两个数字字符串相加(我之前写的一个,过原创 2014-07-04 21:40:55 · 560 阅读 · 0 评论 -
树状数组入门 之 hdu 1166
第一道树状数组。。。入门。。。原创 2014-04-07 17:12:38 · 679 阅读 · 0 评论 -
线段树(单点更新(模板)) 之 hdu 1166
// [7/24/2014 Sjm]/*第一道用线段树做的题,照着大神的代码风格写的,,就当作线段树单点更新的模板吧。。。。*/#include #include #include #include #include using namespace std;#define lson l, m, rt << 1#define rson m + 1, r, rt << 1 |原创 2014-07-24 20:49:20 · 847 阅读 · 0 评论 -
线段树(单点更新) 之 hdu 1754
// [7/25/2014 Sjm]/*线段树单点更新水题。。。*/原创 2014-07-25 11:31:17 · 639 阅读 · 0 评论 -
字典树 之 hdu 1800
// [7/5/2014 Sjm]/*刚开始看到这道题,感觉不是用字典树解决的题,但看到这句知道可能用到字典树:less than 30 digits (只好用字符串保存了) 解题关键:给定一组非负整数,不断从中选取出当前可以选出的最长的递增序列,组成一个集合,直到所给的非负整数全部取完。我们发现,集合的个数即所要求的答案。但是,什么又决定集合的个数呢? 举几个例子,便会发现是所原创 2014-07-05 14:59:55 · 564 阅读 · 0 评论 -
字典树 之 hdu 1671 poj 3630
题目是说:若原创 2014-06-28 21:52:01 · 819 阅读 · 0 评论 -
字典树 之 hdu 1247
/*放了一天,晚上突然想出其这道题哪里出了问题。。。悲催的Runtime Error(ACCESS_VIOLATION)此题思路:1)建字典树2)尝试把每个单词拆成两个单词的所有情况,判断这两个单词是否都在字典树中 若为true,输出该单词;否则不输出该单词做题中碰到的问题:1)一直用string,结果指针用的很悲催。。。(程序中对错误的使用指针做了解释)原创 2014-07-01 00:32:54 · 545 阅读 · 0 评论 -
字典树 之 hdu 1251
增加一个原创 2014-06-28 21:26:01 · 455 阅读 · 0 评论 -
字典树(入门) 之 hdu 1075
#include #include #include #include using namespace std;const int MAX = 26;struct Trie {Trie *next[MAX];char *c;Trie() {c = NULL;memset(next, NULL, sizeof(next));}};原创 2014-06-28 21:20:25 · 471 阅读 · 0 评论 -
树状数组 之 poj 3067
有了以前几道树状数组的基础,原创 2014-05-23 21:03:29 · 449 阅读 · 0 评论 -
字典树 + 深搜 之 hdu 1298
// [7/16/2014 Sjm]/*字典树 + 深搜。。。(好久没碰搜索了,调试了一段时间,不过还好1A。。。)*/原创 2014-07-16 14:00:28 · 653 阅读 · 0 评论 -
树状数组 之 poj 2481
/*虽然事先知道这题可用树状数组求解,但对之前 poj 2352 理解不够深刻啊。。。花了好久,才想出办法了。。。其实和 poj 2352 解法一样,只不过不是那么明显了。先对 e 进行从大到小排序,如果 e 相等,对 s 进行从小到大排序。(对于排序后的Cows,假设 以前的Cows stronger 当前Cow,则必然 当前Cows的s 大于 以前的Cows的s)=>可用树状数组进原创 2014-05-13 00:40:25 · 523 阅读 · 0 评论 -
树状数组 之 poj 2352
/*解题关键:(1) Let the level of a star be an amount of the stars that are not higher and not to the right of the given star. 这个便是对 lev[i] 的定义(2) Stars are listed in ascending order of Y coordin原创 2014-05-09 22:24:22 · 449 阅读 · 0 评论 -
Kmp 加深理解 之 poj 3461
求模式串在文本中出现的次数。。。关键在于:原创 2014-09-11 12:24:23 · 506 阅读 · 0 评论