02 2019 档案

摘要:给你两个字符串a(len[a]=n),b(len[b]=m),问b是否是a的子串,并且统计b在a中的出现次数,如果我们枚举a从什么位置与匹配,并且验证是否匹配,那么时间复杂度O(nm), 而n和m的范围为10^5,这样做显然超时,因此我们就要用到神奇的KMP算法,在O(n)的时间内解决这一类的问题。 阅读全文
posted @ 2019-02-21 17:56 snowy2002 阅读(250) 评论(2) 推荐(0)
摘要:AC自动机真神奇,其实说白了就是在trie树上进行kmp模式匹配,不过刚接触确实有些难度,有些思想确实有些难以理解,所以学习的时候最好亲自手动模拟整个算法的全过程,那我就来写篇blog总结一下。 首先我们需要明白AC自动机是用来干什么的,首先我们知道kmp算法是用来解决单模式串匹配问题的,那么如果模 阅读全文
posted @ 2019-02-18 09:39 snowy2002 阅读(275) 评论(0) 推荐(0)
摘要:传送门 题意 KI先生有收集大量小电影的习惯, 他把他的珍藏理成一大摞。无论何时他想观看这一些电影的一部,他从这一摞电影中找出这一部电影,小心地将其拿出,以确保这一摞电影不会倒塌. 自从那一摞电影变得越来越大,他需要跟踪每一部电影的位置.或许了解每一部电影上面有多少部电影,就足以根据这些信息计算出其 阅读全文
posted @ 2019-02-16 15:45 snowy2002 阅读(184) 评论(0) 推荐(0)
摘要:众所周知,树状数组是一种十分神奇的数据结构,利用它我们可以解决一系列和逆序对相关的问题。 P1908 逆序对 输入输出格式 输入格式: 第一行,一个数n,表示序列中有n个数。 第二行n个数,表示给定的序列。序列中每个数字不超过10^9 输出格式: 给定序列中逆序对的数目。 输入输出样例 输入样例#1 阅读全文
posted @ 2019-02-16 15:38 snowy2002 阅读(299) 评论(0) 推荐(0)