Luogu2444 病毒(AC自動機)

2022-03-20 08:02:22 字數 735 閱讀 9596

洛谷

如果存在乙個無限長的串

證明可以在\(ac\)自動機上找到乙個環

然後在上面可以無限跳

所以構建\(ac\)自動機

在上面跑\(dfs\)就好啦

#include#include#include#include#include#include#include#include#include#includeusing namespace std;

#define max 50000

struct node

t[max];

int n,tot;

char ch[max];

void insert(char *s)

t[now].lt=1;

}void getfail()

}bool vis[max];

bool vv[max];

void dfs(int u)

if(vv[u])return;

vis[u]=true;vv[u]=true;

for(int i=0;i<2;++i)

if(t[u].vis[i])

dfs(t[u].vis[i]);

vis[u]=false;

}int main()

getfail();

dfs(0);

puts("nie");

return 0;

}

Luogu2444 病毒(AC自動機)

洛谷 如果存在乙個無限長的串 證明可以在ac 自動機上找到乙個環 然後在上面可以無限跳 所以構建ac 自動機 在上面跑df s 就好啦 include include include include include include include include include include us...

洛谷2444 BZOJ2938 病毒 AC自動機

題目鏈結 題意 給你n個01串,這些01串不能在你的串中出現,問你是否能構造出無限長的01串。題解 乍一看是挺不好想的。無限長會想到得到乙個可行的迴圈節,那些串不能出現卻不太好處理。我是聽別人講的這道題,所以我也沒有想好該怎麼說明才能想到ac自動機的,如果有能給出乙個合理的思維過程的朋友歡迎與我交流...

洛谷P2444 病毒(AC自動機變形)

作為一道蹂躪了我一天的題 我也沒啥好說的了qaq 思路概述 我們知道,ac自動機是一種多模字串匹配演算法。構造 trie 樹 後,在模式串末尾一位的結點作上標記。平常的 ac自動機 是盡量能多接觸到這些標記,使總值最大。本題倒是有點奇葩,要構造乙個可行的無限長文字串,使沒有任何子串為給出模式串中的乙...