
hash
文章平均质量分 67
zhhx2001
这个作者很懒,什么都没留下…
展开
-
bzoj1014火星人(字符串hash+splay)
表示刚开始1.没有选好mod数2.强制类型转换有问题,然后竟然wa了好几次,以后用9875321这个质数作为mod数其余就是代码能力的部分了#include#include#include#include#include#include#define debug(x) cout<<#x<<"="<<x<<endlusing namespace std;typed原创 2016-07-24 16:33:01 · 527 阅读 · 0 评论 -
bzoj1056(挖个坑wa+tle,平衡树)
代码题。。。虽然还没有过,但是有学了一些经验1、中间就可以直接普通的输入输出了freopen("rank.in","r",stdin);freopen("rank.out","w",stdout); fclose(stdin);fclose(stdout);2、原创 2016-07-26 10:24:14 · 706 阅读 · 0 评论 -
Tyvj1057(字符串hash)
hash#include#include#include#include#includeusing namespace std;typedef unsigned long long ull;inline int idx(char ch){ switch(ch) { case 'G':return 1; case 'C':return 2; case 'A原创 2016-08-10 00:25:14 · 341 阅读 · 0 评论 -
tyvj1068(hash水过,kmp性质)
kmp性质,对于kmp方法的思考过程,性质证明,还是没有搞明白。。。挖个坑#include#include#include#include#include#includeusing namespace std;char a[200005],b[200005];int f[200005],ans[200005],n,m,q;int main(){ scanf("%d%d%原创 2016-08-09 18:00:11 · 587 阅读 · 0 评论 -
bzoj1141(矩阵hash)
一:编译超时,原因是数组开得过大!!二:如果更改数组大小,在往小改的时候,注意有没有预处理的情况,防止越界关于hash:base1,base2这样的取值,差不多取就行,根本不必纠结于此关于题目:求有多少个向下左右对称的正方形子矩阵,显然,这样的矩阵是 靶形 样式的圈绕在那里其实就是,枚举位置,判断以这个位置为中心有多少层圈,其实就是二分多少层,矩阵hash判断原创 2016-08-09 14:32:19 · 502 阅读 · 0 评论 -
hashkiller(hash性质记录)
如果一个房间里有23个或23个以上的人,那么至少有两个人的生日相同的概率要大于50%。生日攻击:如果你在n个数中随机选数,那么最多选√n次就能选到相同的数同样的,这题的Hash值在0到1000000007.根号n,那就要选差不多10^5次唯一注意的是l要取大,使得hash值超过Mod!!否则就不可能有2个数有相同的Hash值原创 2016-08-20 16:31:26 · 1251 阅读 · 0 评论 -
bzoj2462(矩阵二维hash)……不会的题就hash
实际上,就是横着hash一次,再竖着hash一次,注意横竖的base不能相同冲突是难以避免的取一个矩阵的hasha[i][j]-a[i][j-mm]*qb1[mm]-a[i-nn][j]*qb2[nn]+a[i-nn][j-mm]*qb1[mm]*qb2[nn];hs[++tot]=hss;//二维差分取hash值也是通过差分来取,和一维的差不多原创 2016-08-09 11:07:43 · 1926 阅读 · 0 评论 -
poj3349(hash)
每个雪花都有六个分支,用六个整数代表,这六个整数是从任意一个分支开始,朝顺时针或逆时针方向遍历得到的。输入多个雪花,判断是否有形状一致的雪花存在。旋转后相同也算,方向不同但是相同也算例:1 2 3 4 5 6 和 2 3 4 5 6 1就是相同的这道题hash来做,但是把所有的雪花和他们不同方向不同起始点的雪花序列都加进去,判重冲突的概率太高,并且就算挂拉链避免冲突的话也会TLE原创 2016-08-08 17:30:53 · 445 阅读 · 0 评论 -
poj2774(后缀数组||字符串hash)
求两个串的最长公共子串将两个串连起来,求后缀数组,sa中相邻两个后缀如果不属于同一个模版,则用这个height更新答案,他们的最长公共前缀更新答案#include#include#include#include#include#include#define max(x,y) (x)>(y)?(x):(y)using namespace std;const int N=100原创 2016-08-07 10:51:44 · 431 阅读 · 0 评论 -
poj1200(字符串hash,!!!
终于意识到自己的字符串hash的问题,注释中标记!!!#include#include#include#include#include#define MS(x) memset(x,0,sizeof(x))using namespace std;typedef unsigned long long ull;const int p=137;ull hz[690005],pp[原创 2016-08-08 11:16:58 · 324 阅读 · 0 评论 -
bzoj3555(字符串hash,疑问??)
自然溢出可以过,为什么mod大质数就被卡??或者是说别的#include#include#include#include#include#includeusing namespace std;typedef long long ll;const int N=30005;const ll mod=1e+7;const ll p=131;char ch[N][209];un原创 2016-08-04 13:53:31 · 312 阅读 · 0 评论 -
codeforces367(字符串hash求lcp比较大小,Trie解最大异或问题)
C:有n个字符串,排在一列,我们要求让这些字符串按字典序升序排列,对于一个字符串我们可以将它反转,有一个费用ci,求使升序排列的最小费用dp+log len的比较大小f【i】【0】表示不翻转,使前i个升序的最小费用f【i】【1】表示反转,使前i个升序的最小费用肯定是从f【i-1】【0】或【1】转移来的只要判断大小就可以了不过有个很关键的,文中说字原创 2016-08-12 09:31:45 · 589 阅读 · 0 评论