博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 2778 DNA Sequence(AC自动机+矩阵)
阅读量:5357 次
发布时间:2019-06-15

本文共 878 字,大约阅读时间需要 2 分钟。

 

【题目链接】 

 

【题目大意】

  给出一些字符串,求不包含这些字符串的长度为n的字符串的数量

 

【题解】

  我们将所有串插入自动机计算match,对于自动机上所有节点构建转移矩阵,

  对于得到的可达矩阵我们求n长路的数量,统计0到各个点的n长路之和就是答案。

 

【代码】

#include 
#include
using namespace std;const int N=110;typedef long long LL;LL P=100000LL;struct mat{ int n; LL num[110][110]; void init0(int t){ n=t; for(int i=0;i
0){ if(t&1)ans=ans*now; now=now*now; t>>=1; }return ans; }}mat;namespace AC_DFA{ const int Csize=4; int tot,son[N][Csize],sum[N],fail[N],q[N],ans[N],match[N]; void Initialize(){ memset(sum,0,sizeof(int)*(tot+1)); memset(ans,0,sizeof(int)*(tot+1)); memset(match,0,sizeof(int)*(tot+1)); memset(fail,0,sizeof(int)*(tot+1)); for(int i=0;i<=tot;i++)for(int j=0;j

转载于:https://www.cnblogs.com/forever97/p/poj2778.html

你可能感兴趣的文章
青岛Uber优步司机奖励政策(8/10-8/16)
查看>>
window下安装Memcache
查看>>
遍历子窗口
查看>>
MySQL查询语法
查看>>
第三方苹果开发库之ASIHTTPRequest(翻译版)
查看>>
Delphi XE6记录类型赋值
查看>>
状态模式
查看>>
石子归并
查看>>
connect socket的超时设置
查看>>
汪曾祺《受戒》
查看>>
Thread Based Parallelism - Thread in a Subclass
查看>>
Delphi TCOM控件串口通信调试寻找文件传输速度慢的原因
查看>>
Objective-C MRC多个对象相互引用的内存管理
查看>>
ServerSocketChannel和SocketChannel
查看>>
前缀树(Trie树,字典树)
查看>>
BZOJ 4543 2016北京集训测试赛(二)Problem B: thr 既 长链剖分学习笔记
查看>>
SQL server 数据库日志文件过大清空日志文件
查看>>
注解的概述
查看>>
【原创】逆向练习(CrackMe)
查看>>
HTML 页面自动刷新
查看>>