AC自动机的一些小问题

先挂一个学习blog

1. 关于这一句:

int l=strlen(s);
for(rint i=0;i<l;i++){...}

  图省事写成

for(rint i=0;i<strlen(s);i++){...}

  就会被T飞。。(每次循环都会给你重新计算长度)

2.关于数组范围:

  开在(模式串长度)*26 的样子吧

  多组数据记得 tot = 1 !!

3.关于 AC 自动机的匹配过程

  (相当迷惑,好像匹配的时候根本没看见“失配”这一操作啊?)

  以后懂了来填坑

4.关于这一题P3796 【模板】AC自动机(加强版)

  只是吐槽一下数据。。

  貌似只有最后一个数据点是真的

  写成这样拿了90:

for(rint i=1;i<=tot;i++)if(!in[i])que[++tail]==i;

  “que[++tail]==i” 拿90可太。。

 




上一篇:日常Java


下一篇:CSP膜你赛26