![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
字符串
文章平均质量分 55
Xi_7997
一只啥也不会的蒟蒻
本博客暂时不再使用
展开
-
2021 CCPC训练 F. 地图压缩 ( kmp +字符Hash )
F. 地图压缩样例题意给一个二维字符矩阵 , 每次询问给定一个区间 , 求这个区间的最小循环节。思路首先对于一维字符串的最小循环节(无需完全覆盖) , 方法就是求出kmp的nxt数组 , ans = len - nxt[len] 。对于二维的情况 , 容易发现行与列之间是不冲突的 。于是我们对行求一遍哈希 , 对列求一遍哈希 。询问时把区间的每一行的哈希值取出来做一遍kmp的预处理 ,再把每一列的哈希值取出来做一遍kmp的预处理 , 两个结果相乘就是答案 。这样处理的复杂度是 O(原创 2021-11-11 19:49:27 · 577 阅读 · 0 评论 -
HDU 2296 Ring (AC自动机+dp)
Ring题意有 n 个 “快乐”字符串 si , 每个字符串有一个快乐值 ai 。一个字符串的快乐值总和 = 每个“快乐”字符串出现的次数 * 该字符串的快乐值 。要求找到长度不大于m的 , 快乐值最大的字符串 。如果多个相同,则输出长度最短且字典序最小的。数据范围如上。样例思路AC自动机fail指针:if(nxt[now][i]==-1) nxt[now][i] = nxt[fail[now]][i]; else fail[nxt[now][i]原创 2021-10-29 22:17:49 · 131 阅读 · 0 评论 -
poj2778 DNA Sequence (AC自动机+矩阵快速幂)
DNA Sequence题意在由‘A’, ‘C’ ,‘T’ ,‘G’ 组成的DNA序列中有一些基因片段携带遗传病 。如果某个DNA序列中包含一个或多个这样的基因片段 ,那么这个DNA序列是有遗传病的 。现在给 m 个基因片段 si 。问所有长度为 n 的DNA序列中 ,有多少个没有遗传病 ,答案模100000 。(其中 0<= m,si ,<= 10 , 1 <= n <= 2000000000)input4 3ATACAGAAoutput36思路这原创 2021-10-29 20:11:53 · 165 阅读 · 0 评论