题目大意:维护一个字符串,支持插入字符和替换字符的操作,以及查询该字符串两个后缀的最长公共前缀长度 乍一看以为是后缀数组,然而并没有可持久化后缀数组(雾) 看题解才知道这是一道splay题,首先要对splay维护区间信息有一定了解 splay维护,插入字符,替换字符 而它的字树内所有儿子的中序遍历的 ...
分类:
Web程序 时间:
2018-09-24 23:18:06
阅读次数:
244
? 书中第十三章的程序,主要讲了汇编语言和 C/++ 相互调用的方法 ● 代码,数组求和的几种优化 ● C 内嵌汇编(代码段),检查对象大小 ● C++ 内嵌汇编(单独的函数),加密字符串 ● C++ 内嵌汇编(独立文件),线性查找。要点:单独使用 ml.exe 编译 index2.asm 生成 i ...
分类:
编程语言 时间:
2018-09-24 21:18:44
阅读次数:
162
P2880 [USACO07JAN]平衡的阵容Balanced Lineup RMQ RMQ模板题 静态求区间最大/最小值 (开了O2还能卡到rank9) ...
分类:
其他好文 时间:
2018-09-23 11:54:41
阅读次数:
168
"传送门" 跟这个大佬学的 "戳我" 假设只有一个宿管,那么从前往后做的过程中,如果能到达某个寝室范围内的人数不够$b$,那么不如把这个寝室空出来,这样更有利于后面的抉择;反之,就把这个寝室搞正好$b$个人,在前面搞好一个寝室是要比在后面搞好有利的,这样就可以记个前缀和,然后一路贪心 现在有两个宿管 ...
分类:
其他好文 时间:
2018-09-22 21:23:43
阅读次数:
151
题目描述 "p1115 最大子段和" 虽然是一个普及 的题,但我敲了 线段树 qwq 数组定义 $lsum[ ]$代表 该区间左端点开始的最大连续和. $rsum[ ]$代表 该区间右端点开始的最大连续和. $ssum[ ]$代表 区间内最大连续和. $sum[ ]$ 代表区间和. Que and ...
分类:
其他好文 时间:
2018-09-22 21:21:49
阅读次数:
121
这一题改一改$KMP$算法就可以过了,但是你需要对KMP有足够的了解。 先膜一波$AC$自动机和字符串$Hash$的大佬。 $O(n)$开了$O_2$优化后进了第三(截至目前),跑的还是挺快的。 $KMP$问题的核心在于数组$next$(或者$pre$/$fail$,各种叫法),几乎所有的此类型题都 ...
分类:
编程语言 时间:
2018-09-22 21:13:44
阅读次数:
152
题意:给定一棵$n$个点的树,将叶子节点分为数个集合使集合里点对最长距离不超过$k$,求最少集合数。($n\le1000000$) 首先我们可以想到,这道题并不是让你构造最优方案,因为只要把所有叶子节点的集合任意合并至无法操作,就一定是最优答案了 这个感性理解一下就是那么回事,我一开始做的时候就想到 ...
分类:
其他好文 时间:
2018-09-22 10:34:46
阅读次数:
145
传送门 Manacher算法是解决回文串长度计算的利器。 优秀的算法大多起源于暴力的思想……我们一步一步来看。 首先思考最暴力的情况怎么匹配?枚举所有区间然后判断是不是回文串,时间复杂度O(n^3). 之后我们考虑优化一下。因为回文串的左右是相同的,所以我们不妨可以枚举回文串的中点,之后向两边依次拓 ...
分类:
编程语言 时间:
2018-09-21 15:11:15
阅读次数:
168
题目描述 给定一个长为n的整数序列(n<=1000),由A和B轮流取数(A先取)。每个人可从序列的左端或右端取若干个数(至少一个),但不能两端都取。所有数都被取走后,两人分别统计所取数的和作为各自的得分。假设A和B都足够聪明,都使自己得分尽量高,求A的最终得分。 输入输出格式 输入格式: 第一行,一 ...
分类:
其他好文 时间:
2018-09-20 21:26:21
阅读次数:
177