码迷,mamicode.com
首页 >  
搜索关键字:最短不公共子串    ( 7个结果
【BZOJ】4032: [HEOI2015]最短不公共子串(LibreOJ #2123)
【题意】给两个小写字母串A,B,请你计算: (1) A的一个最短的子串,它不是B的子串 (2) A的一个最短的子串,它不是B的子序列 (3) A的一个最短的子序列,它不是B的子串 (4) A的一个最短的子序列,它不是B的子序列 不存在输出-1,1<=len(A),len(B)<=2000。 【算法】 ...
分类:其他好文   时间:2018-01-04 13:07:12    阅读次数:201
bzoj4032: [HEOI2015]最短不公共子串
Description 在虐各种最长公共子串、子序列的题虐的不耐烦了之后,你决定反其道而行之。 一个串的“子串”指的是它的连续的一段,例如bcd是abcdef的子串,但bde不是。 一个串的“子序列”指的是它的可以不连续的一段,例如bde是abcdef的子串,但bdd不是。 下面,给两个小写字母串A ...
分类:其他好文   时间:2016-12-14 21:13:42    阅读次数:159
后缀自动机初探
之前看过几次后缀自动机,然后因为人太蠢都没看懂。 最近重新填坑TAT。。。 BZOJ4032: [HEOI2015]最短不公共子串 建出后缀自动机和序列自动机,然后我们知道自动机上每一条路径都相当于一个子串(子序列),这样只要从根节点开始bfs一遍,找到A有而B没有的,那就是字典序最小的辣。 #in
分类:其他好文   时间:2016-02-05 01:41:51    阅读次数:228
后缀自动机初探
之前看过几次后缀自动机,然后因为人太蠢都没看懂。最近重新填坑TAT。。。BZOJ4032: [HEOI2015]最短不公共子串建出后缀自动机和序列自动机,然后我们知道自动机上每一条路径都相当于一个子串(子序列),这样只要从根节点开始bfs一遍,找到A有而B没有的,那就是字典序最小的辣。#includ...
分类:其他好文   时间:2016-01-19 09:05:03    阅读次数:189
BZOJ4032 : [HEOI2015]最短不公共子串
第一问:对B串建立SAM,暴力枚举A的每个子串,在SAM上走,若失配则可行。第二问:设g[i][j]表示B串的第i个字符之后最早出现的字符j的位置,暴力枚举A的每个子串,按照g贪心地走,若失配则可行。第三问:对B串建立SAM,设f[i][j]表示考虑了A的前i个字符,当前在SAM上的状态为j的最小长...
分类:其他好文   时间:2015-12-02 06:32:13    阅读次数:209
BZOJ 4032 HEOI2015 最短不公共子串 后缀自动机+序列自动机+BFS
题目大意:给定字符串A和B,求A最短的子串/子序列S满足S不是B的子串/子序列 这题真TM有毒*2 搞法类似这道题 然后子串是后缀自动机 子序列自然就是序列自动机了= = 每更新一个x节点时所有没有x的后继的节点都连向这个节点 每个节点的parent是这个字母上一次出现的位置 每个字母记录最后一次出现的位置 更新指针时沿着parent指针撸一遍就行了#include #...
分类:其他好文   时间:2015-04-27 21:47:52    阅读次数:172
【BZOJ4032】【HEOI2015】最短不公共子串 后缀自动机
题解: T1: 我们按长度bfs所有的串,对于每个串记录A串中终点位置、B串中终点位置(B串中位置由B的后缀自动机中节点标号表示)、长度——(x,y,l)(x,y,l)。 然后 (x,y,l)(x,y,l) 可以 O(1)O(1) 转移到 (x+1,son[y,stringax+1?′a′],l+1)(x+1,son[y,stringa_{x+1}-'a'],l+1) 时间复杂度 O(...
分类:其他好文   时间:2015-04-27 18:27:23    阅读次数:134
7条  
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!