博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU 6086 Rikka with String ——(AC自动机 + DP)
阅读量:6339 次
发布时间:2019-06-22

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

  这是一个AC自动机+dp的问题,在中间的串的处理可以枚举中断点来插入自动机内来实现,具体参见代码。

  在这题上不止为何一直MLE,一直找不到结果(lyf相同写法的代码消耗内存较少),还好考虑到这题节点应该不会过多,可以少开一点节点数。

  代码如下:

1 #include 
2 using namespace std; 3 //const int N = 5e4 + 5; 4 //const int MAX_Tot = 6 * 20 * 20 + 6 * 20 + 100; 5 const int MAX_Tot = 500; 6 typedef long long ll; 7 const int mod = 998244353; 8 9 int T, n, L; 10 void add(int &a, int b) 11 { 12 a += b; 13 if(a >= mod) a -= mod; 14 if(a < 0) a += mod; 15 } 16 struct Aho 17 { 18 struct state 19 { 20 int nxt[2]; 21 int fail; 22 int ed, vis; 23 }stateTable[MAX_Tot]; 24 25 int size; 26 27 queue
que; 28 29 void init() 30 { 31 while(que.size()) que.pop(); 32 for(int i=0;i
= len) break;153 }154 if(!can) return ;155 fenge = f;156 if((fenge+1) * 2 <= len)157 {158 for(int i=0;i

 

转载于:https://www.cnblogs.com/zzyDS/p/7404880.html

你可能感兴趣的文章
windows的服务中的登录身份本地系统账户、本地服务账户和网络服务账户修改
查看>>
JAVA中循环删除list中元素的方法总结
查看>>
redis 安装
查看>>
SQL some any all
查看>>
电子书下载:Programming Windows Identity Foundation
查看>>
有理想的程序员必须知道的15件事
查看>>
用于测试的字符串
查看>>
财付通和支付宝资料收集
查看>>
PHPCMS V9数据库表结构分析
查看>>
理解 IEnumerable 与 IEnumerator
查看>>
NHibernate 2.0 Beta 1 Released和一些工具
查看>>
【每天一个Linux命令】12. Linux中which命令的用法
查看>>
软件接口数据一致性机制
查看>>
微服务架构介绍和RPC框架对比
查看>>
Debian下使用OpenLDAP 管理端
查看>>
泛型排序器TComparer
查看>>
9个offer,12家公司,35场面试,从微软到谷歌,应届计算机毕业生的2012求职之路...
查看>>
创建符合标准的、有语意的HTML页面——ASP.NET 2.0 CSS Friendly Control Adapters 1.0发布...
查看>>
Adobe驳斥Flash过度耗电论 称HTML5更耗电
查看>>
No!No!No! It's not fashion!
查看>>