OI训练专题
我本是一个普通的学生,只因为爱好坠入深渊,只想分享与竞赛相关的算法,愿大家都可以成为Au爷
正汰
梦好美啊!好想时间静止,让我去看看这个世界!但时间却依旧悄悄流逝,而自己却什么也没有做,宛如梦初...
展开
-
【后缀数组】不可重叠最长重复子串
hz2016评测《《点击访问caioj《《点击访问这题阴森可怕,两个后缀可以不相同?哦天哪,怎么判断呢。于是,某个聪明的人发现,后缀中两两字符的ANSI值的差是相等的,于是我们可以维护一个由差值组成的后缀数组。所以呢,我们就可以用后缀数组解这道题了,但是这一题,我们还要引入一个新的概念height数组和h数组。height数组的定义就是排名为 i 与 i-1 的最长原创 2017-09-26 18:42:31 · 861 阅读 · 0 评论 -
【后缀数组】后缀排序
最近几天有很多题目没有写,尽量补上吧。hz2016评测《《点击访问caioj《《点击访问后缀数组》后缀自动机树状数组》线段树其实两种都是用一个特殊的简单结构,维护一部分高级算法的查询结构。后缀自动机顾名思义,就是处理后缀的啦,这道题是模板题,把数组的所有后缀按照大到小排序。具体还是看代码注释吧,结合代码会比较好理解。#include#include原创 2017-09-25 19:22:26 · 869 阅读 · 0 评论 -
【AC自动机】地图匹配
hz2016评测《《点击访问《《增加了内存caioj《《点击访问这题其实还是模版题吧,说难不难,说不难还是很难。我们不能按照暴力的思想,给图for8个方向建树。这样会超时的。所以悲伤的我们只好测试可不可以反着建。最后我们总结出反着建句子的字典树,然后离线找匹配。例如一个5*5的地图111111222112321122211原创 2017-09-23 10:33:20 · 592 阅读 · 0 评论 -
【莫比乌斯反演】GCD1
还是不要脸的先给链接hz2016评测《《点击访问caioj《《点击访问这题是莫比乌斯反演的模板题只要让F(t)=满足gcd(x,y)%t==0的数对个数 f(t)满足gcd(x,y)=t的数对个数,则F(t)和f(t)就存在莫比乌斯反演的关系了。显然F(t)=(b/t)*(d/t) 因为如果gcd(x,y)=1,则gcd(x?k,y?k)=k,所以我们把b和d同时除以k原创 2017-09-22 19:46:03 · 933 阅读 · 0 评论 -
莫比乌斯反演入门及推导
参考于http://www.cnblogs.com/chenyang920/p/4811995.html改成更容易理解的一个格式吧。这个文章主要ACM中的莫比乌斯反演公式,自己看《组合数学》很难,又很少博客写这些内容,所以chenyang920就写了一篇这样的文章就自己想了种证明方法,觉得比《组合数学》的证明简单些,就写一下,希望对初学莫比乌斯反演的同学有帮助。PS:下面公原创 2017-09-22 19:16:53 · 1153 阅读 · 0 评论 -
【线筛】线性筛选素数
hz2016评测《《点击跳转caioj《《点击跳转线性筛选,什么名词,听不同,通俗就是减少后面搜索状态而已嘛。具体还是看注释吧,就是On求素数。#include#include#include#include#include#include#include#include#define Maxprime 15485863#define原创 2017-09-22 13:14:08 · 529 阅读 · 0 评论 -
【AC自动机】统计单词出现个数
hz2016评测《==点caioj.cn《==点#include#include#include#include#include#include#include#include#define Maxchar 1000000#define Maxm 10000#define Maxn 50#define Maxs 26#define mes原创 2017-09-21 20:52:50 · 690 阅读 · 0 评论 -
【Manacher】最长回文子串
caioj任意门hz2016评测传送门可以的话来一下hz2016评测吧,有的题caioj没有的我也可以给到数据嘛。#include#include#include#include#include#include#include#include#define Maxchar 100000#define mes(x,y) memset(x,y,s原创 2017-09-21 20:36:26 · 223 阅读 · 0 评论 -
EXKMP模版:最长共同前缀长度
模版题,嗯嗯,我也是这么觉得的。但是模版嘛还是很难的,要多背,不会背的话qaq呵呵。hz2016评测链接caioj链接题目链接就在上面,尽量过来我的给我增点能量嘛。先上代码#include#include#include#include#include#include#include#include#define Maxc原创 2017-09-20 13:55:41 · 545 阅读 · 0 评论 -
KMP模版:子串是否出现
caioj《===主站链接hzoj《===我的一个分站链接其实你们可以用hzoj的,hzoj会快很多,我这里每一题我都会发博客,都会在上面提交,基本上都有数据,起码比你去其他地方找好得多。【题意】有两个字符串SA和SB,SA是母串,SB是子串,问子串SB是否在母串SA中出现过。如果出现过输出第一次出现的起始位置和结束位置,否则输出"NO"【输入文件】第一行SA(原创 2017-09-18 20:04:35 · 510 阅读 · 0 评论