Day 7 - 哈希与 KMP】的更多相关文章

字符串很神奇,因为它在计算机中应用很广泛,就每一个程序都需要用到字符串,所以学好字符串是非常重要的. 接下来就介绍两个字符串的基本操作 1:字符串hash  一种可以查找几个字符串有几个不同的字符串. 其精髓就是把一堆字符串都转换成几个数字的和的形式. 要领就是把字符串每一位字母的阿斯克码不会拼啊都乘上一个比较神奇的数,再%上一个神奇的数,比如你的生日啊,qq号什么的,尽量是质数,太大了也不行,会爆炸的. van成之后,再把这个值都存进一个数组中,最后查的时候直接用就是了. 为什么这样就可以实现…
题目链接:https://vjudge.net/problem/UVA-11475 题意: 给出一个字符串,问在该字符串后面至少添加几个字符,使得其成为回文串,并输出该回文串. 题解: 实际上是求该字符串的“最长回文后缀”,有多种做法,其中用字符串哈希的方法最方便而且速度最快. 字符串哈希: 从字符串的最后一个字符开始,往前进行计算两个哈希值,其中一个按“先高位后低位”的方法计算,另一个按“先低位后高位”的方法计算.如果在某个位置,两个哈希值相等,那么表明该后缀为回文串,求最长的那个即可. 代码…
Bovine Genomics 暴力 str hash+dp 设\(dp[i][j]\)为前\(i\)组匹配到第\(j\)位的方案数,则转移方程 \[dp[i][j+l]+=dp[i-1][j] \] (\(j,l\)为满足题意的情况 通配符匹配 读题杀.dp 注意星号是可以匹配0个的. 按通配符分段,01表示是否能取到. 蚯蚓排队 留坑. Seek the Name,Seek the Fame kmp(利用next数组) 动物园 现场教学可还行 直接求就好 Censoring 模拟一个栈,ne…
BZOJ 洛谷 建出AC自动机,每个点向两个儿子连边,可以得到一张有向图.参照 [SDOI2012]走迷宫 可以得到一个\(Tarjan\)+高斯消元的\(O((nm)^3)\)的做法.(理论有\(60\)分啊但是第\(5.6\)个点WA了smg) 其实\(O((nm)^3)\)就是 [JSOI2009]有趣的游戏...只需建出AC自动机一遍高斯消元即可,比上面那个不知道好写到哪里去.. \(40\)分的做法问题在于状态(变量)太多.考虑把类似的状态合并成一个. 假设现在一共有两个串\(TTH\…
传送门 orz ymd 考虑构造生成函数:设\(F(x) = \sum\limits_{i=0}^\infty f_ix^i\),其中\(f_i\)表示答案为\(i\)的概率:又设\(G(x) = \sum\limits_{i=0}^\infty g_ix^i\),其中\(g_i\)表示经过了\(i\)步之后还没有结束的概率.那么答案显然是\(F'(1)\). 考虑在还没有结束的序列之后加入一个字符,那么有可能结束也有可能没有结束,即\(F(x) + G(x) = xG(x) + 1\). 两边…
T1 Description 给定$N$个点,问这$N$个点能构成的三角形个数. Input 第一行一个整数$N$,代表点数. 接下来$N$行,每行两个非负整数$X,Y$,表示一个点的坐标. Output 一个非负整数,即构成三角形个数. Sample Input 5 0 0 1 0 2 0 0 1 1 1 Sample Output 9 HINT $N\;\leq\;100$,保证任意两点不重合,坐标$\;\leq\;10000$. Solution 只要三点不共线就能组成三角形了.是否共线用…
作者:Glowin链接:https://zhuanlan.zhihu.com/p/22881223来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 原文地址:Google Interview University 原文作者:John Washam 译文出自:掘金翻译计划 (翻译不易,欢迎 Star 支持) 译者:Aleen,Newton,bobmayuze,Jaeger,sqrthree 这是? 这是我为了从 web 开发者(自学.非计算机科学学位)蜕变至 Goog…
首先这道题是GT考试的加强版本QAQ 当n<k的时候,答案显然是10^n 当n=k的时候,答案显然是10^n-1 这样就有20分辣 之后我们考虑k<=20的做法 显然设f(i,j)表示前i位匹配到了第j位 之后用KMP来转移就可以了 如果不用矩阵乘法优化的话时间复杂度O(n*k*10) 如果用矩阵乘法的话时间复杂度O(k^3logn) 其实就是GT考试的做法辣 这样就有50分了 之后我们考虑用dp来容斥 设fi表示前i位且第一次匹配的位置是[i-k+1,i]的方案 不难发现fi=m^(i-k)…
完结撒花? 最后的模拟赛与讲题.大家似乎仍然乐在其中,虽然看评测结果,仍然是满地红. 其实到了最后已经是没有多少可写的了..... 一个精彩的地方是晚上填表的时候,群里炸锅了已经.到处都在刷CCL老师的表情23333 (CCL表示让他们疯去吧) 大概的想了想这几天的内容,在最后的七天里,要做的事情还有很多. (学校模拟赛的出题任务又甩给我了...星期天就要比的..) 先列一些出来吧. 11.4 搞三个题,如果有时间就复习一下排序 查找 二分等基础操作. 11.5 树与图的相关算法(包括新增的二分…
作为一个oier,适当的整理是有必要的.蒟蒻根据自己的理解,筛选出考noip应当掌握的知识点.可能后期还有解题思路和模板,先挖个坑慢慢补呗. 60级张炳琪Noip知识点总结 可能是本人比较弱,写的内容比较简单,主要是应对noip知识点的覆盖.其实感觉noip大多还是考思维(可能大佬们认为不需要思考..) 一.知识点 (一).暴力求解法 1.模拟算法,模拟模型建立 2. dfs洪水模型  迷宫模型  最优性可行性剪枝,记忆化搜索 3. bfs    双向宽搜    判重的方法 4.枚举法 (二)图…