E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
POJ2778
POJ2778
刷AC自动机,很久以前做过,再系统地做一便,发现之前dp矩阵的裸体都过不了。玄学修改后就行了(板子问题???)记录一下#include#include#includeusingnamespacestd;#definelllonglongintch[105][5];introot=0;llmod=(ll)1e5;intfail[105],val[105],sz;charrea[4]={'A','T'
TAB_ball
·
2020-08-25 15:36
业余ACMer笔记·AC自动机
这次三个题BZOJ1030,
POJ2778
,hdu2243是同一种套路,但数据范围和题目要求不同,在这里整理一下。
灵隐寺未来职工
·
2020-08-24 23:33
poj 1625 Censored! AC自动机+DP +高精度 + C艹 + java
挺简单的一道题,搞了很久,主要是用java写的时候对java不熟悉,各种错误都出来了,不过学到了不少这题用DP去构造就可以了,另有一题加强版(
poj2778
)题意一样,只不过需要用到矩阵乘法dp[i][
haha593572013
·
2020-08-24 22:18
Dynamic
Programming
Strings
Censored! POJ - 1625(AC自动机 + dp +高精度模板)
此外,这题和
POJ2778
有点类似,不过
POJ2778
不需要用大整数,用矩阵快速幂可以过,但这题需要用高精度存答案,高精度+矩阵快速幂会tle。所以我们用动态规划,
yc小白
·
2020-08-24 20:45
AC自动机
动态规划
算法
动态规划
HDU2243 考研路茫茫――单词情结 AC自动机
题意:求不包含给定的串且长度不大于m的串的个数思路:这题是
POJ2778
的加强版,方法是求出包含给定的串的个数,再用总的方法数去减这个数字,就是得到不包含给定的串的个数。
我要满满的AC
·
2020-08-15 12:21
AC自动机
hdu 2243(ac自动机+矩阵快速幂)
题解:这道题和
poj2778
类似,不过是把长度小于L的串的可能情况也计入,把邻接矩阵多一维存总和,然后结果用总种类数减一个模式串也不出现的种类数。
路小白_zZ
·
2020-08-15 11:20
ACM-AC自动机
ACM-矩阵快速幂
HDU 2243 考研路茫茫――单词情结 很是炫酷的题
题目所求答案为总数减去不合法的,求不合法数与
POJ2778
类似,不再赘述。二分求等比数列的前n项和。s(n)=a1+a2+a3+a4+......
自在_飞花
·
2020-08-15 11:10
【MZ】hdu 2243 AC自动机 + 矩阵加速
think:和
poj2778
有点像。不一样的是:1)这个是求包括的,我这么做的,加一维用来表示已经包括了病毒的状态。2)求长度是[1,m]的。在矩阵里面维度变成二倍。
ACM的记忆
·
2020-08-15 10:14
HDU2243-----AC自动机+矩阵乘法+矩阵公式
pid=2243题目意思:给你n个字符串,然后给你一个长度L问你在长度不超过L的所有字符串中(a~z)有多少个至少含有一个子串意思很明确了,下面说解法,这题和
POJ2778
很类似,详见:http://blog.csdn.net
dr5459
·
2020-08-15 10:14
数学
矩阵系列
数据结构
HDU 2243 考研路茫茫――单词情结
这道题和
poj2778
类似都需要利用end数组和next数组的特性构建状态数组,不过这里是需要经过至少一个目标串,而且长度是不小于L的,即需要长度为1~L时的种数和。
as604412059
·
2020-08-15 10:01
AC自动机
[AC自动机+矩阵快速幂] 求长度为m的不包含某些给定子串的字符串数量
POJ2778
DNASequenceTimeLimit:1000MSMemoryLimit:65536KTotalSubmissions:19748Accepted:7525DescriptionIt'swellknownthatDNASequenceisasequenceonlycontainsA,C,TandG,andit'sveryusefultoanalyzeasegmentofDNASequence,
ummmmm
·
2020-08-07 19:18
模板
常用技巧
字符串
AC自动机
POJ2778
AC自动机 + 快速矩阵幂
http://poj.org/problem?id=2778做法:利用AC自动机建矩阵之后进行N次矩阵乘关于AC自动机配快速矩阵幂的理解:1.题目限制10个字符串长度最多为10,那么建出的AC自动机的结点数至多为1002.任意合法字符串必定通过nxt指针在AC自动机的结点之间转移3.那么我们只要求出每次结点之间转移的数量,建立一个矩阵,就可以通过快速矩阵幂优化了4.对于不合法的结点(病毒),将特定
weixin_30486037
·
2020-07-15 03:30
poj2778
ac自动机+矩阵快速幂
给m个子串,求长度为n的不包含子串的母串数,最直接的应该是暴搜,肯定tle,考虑用ac自动机将子串建成字典树,通过next表来构造矩阵,然后用矩阵快速幂求长度为n的数量邻接矩阵https://wenku.baidu.com/view/d7b9787f1711cc7931b716b0.html对于a(i,j)^k是指从i到j经过k个点的所有情况数注意对于End数组,如果某个节点如果fail指针End
weixin_30268921
·
2020-07-15 02:49
poj 2778 AC自动机+矩阵快速幂
详细的解析看这篇博客:
poj2778
矩阵M[i,j]表示的是从i到j只走一步有多少种走法,所以M的n次幂就代表着从i到j走n步有多少种走法。代表的就是串长为n时,有多少种不包含以上
AlmostFree
·
2020-07-15 01:39
数论数学
字符串
POJ2778
DNA Sequence(AC自动机+矩阵快速幂)
DescriptionIt’swellknownthatDNASequenceisasequenceonlycontainsA,C,TandG,andit’sveryusefultoanalyzeasegmentofDNASequence,Forexample,ifaanimal’sDNAsequencecontainssegmentATCthenitmaymeanthattheanimalmay
riba2534
·
2020-07-14 21:28
【AC自动机】
【快速幂/矩阵快速幂】
poj2778
DNA Sequence(AC自动机+矩阵快速幂)
题目链接:点击打开链接题意描述:给m字符串,这m个字符串是带有病毒的DNA。然后问一个长度为n的字符串不带有任何病毒有多少中可能?所有字符串之后ACGT这几个字符串组成解题思路:AC自动机+矩阵快速幂前置内容:邻接矩阵幂的含义:点击打开链接分析:首先根据题意先建一个AC自动机,其实AC自动机本身就是一张图,AC自动机中的每个结点就相当于图中的顶点,每个转移A、C、G、T就相当于一条边;根据邻接矩阵
Think_Idea
·
2020-07-14 15:51
字符串
POJ2778
AC自动机经典题
DNASequenceTimeLimit:1000MSMemoryLimit:65536KDescriptionIt’swellknownthatDNASequenceisasequenceonlycontainsA,C,TandG,andit’sveryusefultoanalyzeasegmentofDNASequence,Forexample,ifaanimal’sDNAsequenceco
WT_cnyali
·
2020-07-14 06:53
算法
Sol
字符串
AC自动机
图论
POJ2778
DNA Sequence (AC自动机+矩阵快速幂)
POJ2778DNASequence原题地址:http://poj.org/problem?id=2778题意:给出有m种有疾病的DNA序列,问有多少种长度为n的DNA序列不包含任何一种有疾病的DNA序列。(仅含A,T,C,G四个字符)数据范围0#include#include#include#include#defineLLlonglongusingnamespacestd;constintN=
Bfk_
·
2020-07-14 04:34
AC自动机
矩阵快速幂
POJ
题解
Hduoj 2243 考研路茫茫——单词情结
这个题目和
POJ2778
很相似,不过这个是求出包含的有多少个。也就是用总的个数减去不包含的。由于长度是1~L内的,所以我们得把所有的情况都给求出来。
cscoder
·
2020-07-07 00:46
hduoj
AC自动机
POJ 1625 Censored ( Trie图 && DP && 高精度 )
分析:与
POJ2778
非常相似的一道题目,如果没有做过就尝试去了解一下,再回过头来看这道题就轻松很多了,是一类题型。
ajumn60282
·
2020-06-22 13:42
POJ2778
DNA Sequence AC自动机上dp
网址:https://vjudge.net/problem/POJ-2778题意:给出字符集${A,C,G,T}$和一些字符串(长度不超过$10$,且数量不超过$10$个),求长度为$n(n\leq2e9)$的字符串中不包括上面这些字符串的字符串的数量。题解:我们可以先考虑一种方式:设$dp(i,j)$是用了$i$个字符拼出符合题意的长度为$j$的字符串的数量,在本题中$dp(i,j)=\sum_
Aya_Uchida
·
2020-02-18 12:00
hdu 2243 AC自动机+dp(矩阵快速幂优化)
做这个之前建议做一下
poj2778
这道题要求长度小于等于m的字符串包含所给串的有多少种,可以算出所有的情况然后减去不包含所给串的情况就是所求的。
acmer_zp
·
2017-07-07 17:47
字符串
矩阵快速幂
【
POJ2778
】 DNA Sequence AC自动机+矩阵快速幂
DNASequenceTimeLimit:1000MSMemoryLimit:65536KTotalSubmissions:14224Accepted:5486DescriptionIt’swellknownthatDNASequenceisasequenceonlycontainsA,C,TandG,andit’sveryusefultoanalyzeasegmentofDNASequence,
ALPS233
·
2016-03-02 20:00
poj2778
DNA Sequence(AC自动机+矩阵快速幂)
DescriptionIt'swellknownthatDNASequenceisasequenceonlycontainsA,C,TandG,andit'sveryusefultoanalyzeasegmentofDNASequence,Forexample,ifaanimal'sDNAsequencecontainssegmentATCthenitmaymeanthattheanimalmay
Kirito_Acmer
·
2016-02-07 16:00
矩阵快速幂
AC自动机
poj2778
DNA Sequence AC自动机 dp 矩阵乘法
poj2778DNASequence题意:求仅有AGCT不含有k(k #include #include #include #definelllonglong usingnamespacestd; constintL=15,N=105,Mo=100000; structM{ lla[N][N]; }ori,res,tmp; intf[N],val[N],ch[N][4],sz; queueq; v
yxr0105
·
2016-02-03 01:00
dp
poj
AC自动机
矩阵乘法
POJ1625 Censored!(AC自动机+DP)
做完后发现居然和
POJ2778
是一道题,回过头来看都水水的。。。dp[i][j]表示长度i(在自动机转移i步)且后缀状态为自动机第j个结点的合法字符串数dp[0][0]=1转移转移。。。
WABoss
·
2016-01-31 21:00
POJ2778
DNA Sequence(AC自动机+矩阵快速幂)
题目给m个病毒串,问不包含病毒串的长度n的DNA片段有几个。感觉这题好神,看了好久的题解。所有病毒串构造一个AC自动机,这个AC自动机可以看作一张有向图,图上的每个顶点就是Trie树上的结点,每个结点都可以看作是某个病毒串的前缀,Trie树的根则是空字符串。而从根出发,在AC自动机上跑,经过k次转移到达某个结点,这个结点所代表的病毒串前缀可以看作长度为k的字符串的后缀,如果接下去跑往ATCG四个方
WABoss
·
2016-01-28 17:00
POJ2778
DNA sequence[自动AC机&矩阵快速幂]
题意:给定m个病毒的DNA序列(由AGCT组成),求长度为n的不包含病毒子串的DNA序列由多少个(模1e9+7),范围m #include #include #include usingnamespacestd; #defineLLlonglong constLLmo=100000; constintMAXS=9999; intn,m; inlineintf(chara) { if(a=='A'
u011542204
·
2015-12-24 22:00
【AC自动机】hdu2222 hdu2896 hdu3065 zoj3430
poj2778
hdu2243
AC自动机用于多个模式串与多个母串的匹配。第一步:根据模式串建立字典树intlen=strlen(w),r=root; for(inti=0;i #include #include #defineMAXN500005 #defineMAXM1000005 usingnamespacestd; intn; charw[MAXM]; structnode { intpos,ch[26],fail;
cqbztsy
·
2015-12-24 20:00
AC自动机
记录个DFA的模版
POJ2778
DFA+矩阵乘法 #include <iostream>#include <cstdio>#include <cstring>using namespace std;typedef long long llg;const int N = 105;const int P = 100000;struct node{ int flag, index;
·
2015-11-11 12:31
poj
POJ 3691 DNA repair(AC自动机+DP)
题目链接 能AC还是很开心的...此题没有
POJ2778
那么难,那个题还需要矩阵乘法,两个题有点相似的。
·
2015-11-11 10:26
AC自动机
poj2778
题意:给出字符串长度n(<=2000000000),给出不可以包含的序列,最多10个,每个长度最大是10。问长度为n的合法序列有多少个?序列中只可能包含ACTG四个字符。 分析:AC自动机(DFA)+矩阵快速幂 ac自动机上的等价态: 等价态即用fail指针连接的点,在行走fail指针时匹配的字符数量并没有发生变化,因此这些点可以看成是相同的匹配状态。 通常有两种方法处理等价态,第一
·
2015-10-27 13:05
poj
AC自动机+快速矩阵幂
poj2778
DNA Sequence
传送门:点击打开链接题意:DNA只有AGCT四种脱氧核糖核苷酸组成,现在告诉你n条致病基因序列,,问长度为m的DNA序列里不含任何的致病基因的种类数是多少。思路:这题可谓是AC自动机的经典神题。。如果只是简单的认为AC自动机只不过是在文中匹配字符串那就打错特错了,它还可以用来压缩状态~这题我们先构想一下动态规划。如果我们没学过AC自动机,,现在假如致病基因的长度都为3.我们可能会这样做。设dp[i
qwb492859377
·
2015-10-23 12:00
BZOJ 1009 [HNOI2008]GT考试 AC自动机+矩阵乘法
题意:链接略方法:AC自动机+矩阵乘法解析:和
POJ2778
一样的题。大概的思路就是我们建AC自动机的时候需要注意如果某个点是一个串的结尾的话,那么下面的节点都要看成结尾节点。
wzq_QwQ
·
2015-09-18 10:00
poj
X
BZOJ1030 [JSOI2007]文本生成器(AC自动机+dp)
【题解】与
poj2778
有类似之处,只不过本题模板串太长,无法用到矩阵,而文本较短,适于dpans=26^m-不含任意单词的文本数 不含任意单词的文本数的求法:转化成从有向图的一点出发,走n步到达另一结点的方案数
cjk_cjk
·
2015-06-24 18:00
dp
AC自动机
反向思考
poj2778
DNA Sequence(AC自动机+矩阵快速幂 )
大神附图的题解:http://blog.csdn.net/morgan_xww/article/details/7834801【题解】将所有病毒串建立成字典树,并标记词尾结点,以下称"非法结点"那么,我们希望改造一下这棵树,即删掉一些结点,构造一些有向边,使得一个n位字符串相当于从改造图的根走n步,且中途不会形成非法串 对于树上的某个结点u,先允许它走到非法结点,将所有有向边都连好后,再将这些点删
cjk_cjk
·
2015-06-24 12:00
矩阵
快速幂
改进的AC自动机
POJ2778
DNA Sequence AC自动机+矩阵连乘
题目大意:某些特定的DNA片段被认为是携带遗传病的序列,现在给出m个带有遗传病的DNA序列,让找出有多少种长度为n的DNA序列不包含任何的遗传病。分析:首先,我们知道,对于一个图G的邻接矩阵matrix[i][j]来说,其值表示的是从节点i走到节点j走一步有多少种不同的走法;对于matrix^2[i][j]来说,表示是从节点i到节点j走两步一共有多少种不同的走法。 那么对于这道题,我们可以把A
AC_Gibson
·
2015-05-09 12:00
hdu2243---考研路茫茫——单词情结(AC自动机+矩阵+二分)
首先对2^64取模的话,可以直接用unsignedlonglong,这样溢出部分就是取模后的结果了方法类似
POJ2778
传送门只不过这里要统计长度不超过m的方案我们先统计出长度为m的所有方案,然后减去不包含这些串的方案
Guard_Mine
·
2015-03-11 12:00
矩阵
AC自动机
poj2778
AC自动机+矩阵快速幂
推荐博客:这里#include #include #include #include #include usingnamespacestd; constlonglongM=100000; structmatrix { longlonga[111][111]; }; intch[111][4],val[51111]; intf[51111]; intsz,n,m; charstr[22]; mapp
cugbbaoge
·
2014-09-26 20:00
Baoge
【
POJ2778
】AC自动机,DP,矩阵乘法
题意:给出n个字串表示“缺陷基因”,然后让求长度为m的基因(4^m个)中有多少个不带病。题解:首先建立AC自动机,然后从每个节点开始选“ATGC”有四种往外转移的途径。如:ACG,C这两个基因建一个ACauto,然后转移矩阵为下。2100121100110112100121001然后把危险状态删去(赋0),即基因结束节点的行和列。然后矩阵变成2100021000000000000000000即21
Vmurder
·
2014-09-17 08:00
题解
AC自动机
矩阵乘法
POJ2778
HDU 2243 考研路茫茫――单词情结 (AC自动机 + dp)
思路:这道题和
POJ2778
是同样的思路。
POJ2778
是要找出长度为L的单词里面有多少无效的单词。那么根据同样的方法构造矩阵,然后所有无效的单词个数为A+A^2+...+A^l个。
SIOFive
·
2014-08-20 16:00
字符串
AC自动机
【MZ】hdu 2243 AC自动机 + 矩阵加速
think:和
poj2778
有点像。不一样的是:1) 这个是求包括的,我这么做的,加一维用来表示已经包括了病毒的状态。2) 求长度是[1,m]的。在矩阵里面维度变成二倍。
dslovemz
·
2013-10-19 12:00
poj2778
之AC自动机+矩阵快速幂
DNASequenceTimeLimit: 1000MS MemoryLimit: 65536KTotalSubmissions: 10171 Accepted: 3824DescriptionIt'swellknownthatDNASequenceisasequenceonlycontainsA,C,TandG,andit'sveryusefultoanalyzeasegmentofDNASeq
xingyeyongheng
·
2013-08-13 01:00
poj2778
DNASequenceTimeLimit:1000MS MemoryLimit:65536KTotalSubmissions:10031 Accepted:3762DescriptionIt'swellknownthatDNASequenceisasequenceonlycontainsA,C,TandG,andit'sveryusefultoanalyzeasegmentofDNASequenc
u010422038
·
2013-07-29 09:00
HDOJ-2243 AC自动机.等比矩阵求和
.整个一容斥问题了...但这题明显是不可行的...那么换个角度..先求出总共小于L的单词数(26^1+26^2+26^3+...26^L)..然后再减去不包括所给字符串的单词...相当于把每个单词看成
POJ2778
kk303
·
2012-03-30 16:00
算法
struct
Matrix
output
POJ2778
- AC自动机+非递归的矩阵乘法
回想还是半个月前...跟着Matrix67的那文章做矩阵乘法....做到这题就卡住了...决心突破..这两周从Trie入门开始..到今天终于把这题给AC了...虽然这半个月做题量相比以前大大减少....但真正能初步掌握一种算法还是值得的... 首先这道题我是参考了几个解题报告的: http://www.matrix67.com/blog/archives/276/ htt
kk303
·
2011-11-04 15:00
c
算法
struct
网络
Matrix
trie图 与 状态图
poj2778
感觉trie图的构造跟状态图是天然的结合,它将剩余的指针指向正确的状态,然后就构造出一个关系图来了, 对于这个关系图,有些点标记为非法点
Yuan
·
2010-04-04 23:00
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他