可持久化trie。 一个重要的思想是前缀和。 然后SB错误调了一晚上。 ...
分类:
其他好文 时间:
2016-05-27 21:36:34
阅读次数:
128
1007 - Mathematically Hard PDF (English) Statistics ForumTime Limit: 2 second(s) Memory Limit: 64 MBMathematically some problems look hard. But with t ...
分类:
其他好文 时间:
2016-05-27 18:17:43
阅读次数:
170
描述 http://www.luogu.org/problem/show?pid=1565 给出一个n*m的矩阵,求最大的且和值为正的子矩阵. 分析 很容易想到的是用前缀和维护,暴力枚举左上角和右下角,这样的复杂度是O(n^4)的.(虽然洛谷上这道题也能过) 一种神奇的方法:用前缀和记录每一行的前缀 ...
分类:
其他好文 时间:
2016-05-25 20:47:58
阅读次数:
348
题目链接 思路:参考了题解。对询问进行极角排序,然后用树状数组维护一下前缀和即可。 /* ID: onlyazh1 LANG: C++ TASK: test */ #include<bits/stdc++.h> using namespace std; #define lson l,m,rt<<1 ...
分类:
编程语言 时间:
2016-05-22 23:21:25
阅读次数:
367
我在群上看到的某道题,貌似用的是线段树,因为前几天遇到差分,再用BIT动态维护一下前缀和,感觉可做就A了. 加了个读优就Rank1啦! 某个不常见的题库,还是把题目拿下来把.. 1 Description 2 给你一些二进制串,我们有对这些数有两种操作。 3 'I i j' 将[i,j]内的所有数取 ...
分类:
其他好文 时间:
2016-05-22 00:44:57
阅读次数:
184
前缀和. 设f[i]为前缀和%7=i的第一个点。那么答案就是max(i-f[s[i]%7])了。 #include #include #include using namespace std; const int maxn = 50000 + 10; int a[maxn],s[maxn]; int... ...
分类:
其他好文 时间:
2016-05-20 22:15:54
阅读次数:
121
将前缀和后缀相同的文件移动到同一个目录的算法设计及C代码实现。...
分类:
移动开发 时间:
2016-05-18 19:29:41
阅读次数:
354
5.16 ... 5.17 cf353 c C - Money Transfers 只想到如果一个区间长度为 x 的话,需要 x-1次操作 然后一直想环形转成线形要怎么做... 看题解. 可以考虑成 k 个区间 每个区间的和都为 0 那么 需要 n-k次 只要 k 最大 暴力算前缀和,如果碰到一次前 ...
分类:
其他好文 时间:
2016-05-18 00:13:17
阅读次数:
212
ADT定义:字符串,是指来自于某个字母表的字符组成的有限序列。
数据结构:可以由向量或者列表来实现。
特点:相对于一般的线性序列,串具有更鲜明的特征:其组成字符很少,串的长度却高出几个数量级。
几个术语: 空串是任何串的子串、前缀和后缀
任何串是其自身的子串、前缀和后缀
长度严格小于原串的子串、前缀和后缀也称为真子串、真前缀和真后缀
作为一个ADT,其标准接口如下 length用于获取串S...
分类:
其他好文 时间:
2016-05-15 08:19:53
阅读次数:
253
KMP算法的精髓就是next数组,必须充分理解这个next数组。
next[j]的含义就是j的真前缀中能够自匹配的最大前缀和后缀,相当于在失配的情况下
能够排除很多不必要的匹配过程。
构造next数组用递推:
void get_next (int *p) {
int t;
t = next[0] = -1;
int j = 0;
while (j+1 < m) {
if (t...
分类:
其他好文 时间:
2016-05-13 01:01:25
阅读次数:
175