AC自动机
Cyhlnj
这个作者很懒,什么都没留下…
展开
-
[USACO12JAN]Video Game Combos
AC自动机建立fail树后树上DP# include <stdio.h># include <stdlib.h># include <iostream># include <string.h># include <algorithm># include <queue># define IL inline# define RG register# define ll long long原创 2017-12-12 19:27:47 · 396 阅读 · 0 评论 -
[Noi2011]阿狸的打字机
题面传送门Sol首先有个很显然的暴力,构建AC自动机 每次询问x,yx, y就yy暴跳trie中的父亲trie中的父亲,跳fail跳fail检查是否有xx的结尾# include # define RG register# define IL inline# define Fill(a, b) memset(a, b, sizeof(a))using namespace原创 2018-01-21 20:08:51 · 234 阅读 · 0 评论 -
[USACO15FEB]审查(黄金)Censoring (Gold)
题面传送门SolAC自动机+栈,每次匹配到栈顶减去这个单词的长度,回到之前的状态 最后栈中留下的就是答案# include # define IL inline# define RG register# define Fill(a, b) memset(a, b, sizeof(a))using namespace std;typedef long long ll;原创 2018-01-22 19:04:08 · 322 阅读 · 0 评论 -
[POI2000]病毒
题面传送门Sol建出AC自动机后DFS能走的点,如果能走回来就可行# include # define IL inline# define RG register# define Fill(a, b) memset(a, b, sizeof(a))using namespace std;typedef long long ll;const int _(3e5 + 5原创 2018-01-22 22:32:20 · 241 阅读 · 0 评论 -
Bzoj3172: [Tjoi2013]单词
SolAC自动机模板题# include # define RG register# define IL inline# define Fill(a, b) memset(a, b, sizeof(a))using namespace std;typedef long long ll;const int _(1e6 + 10);int n, fail[_], val[_],原创 2018-01-09 15:49:06 · 311 阅读 · 0 评论 -
Bzoj1212: [HNOI2004]L语言
题面传送门Sol先建立AC自动机,trie树上每个字符串结束的位置记录下它的长度lenlen 设f[i]f[i]表示前ii个字符是否被翻译 在AC自动机上匹配,跳failfail转移,该点为xx,则f[i]f[i]由f[i−len[x]]f[i-len[x]]转移而来 太菜了不会trie的暴力# include # define RG register# def原创 2018-01-19 14:41:06 · 184 阅读 · 0 评论 -
Bzoj3530: [Sdoi2014]数数
题面传送门Sol在AC自动机上跑数位DP 设f[i][j][0/1]f[i][j][0/1]表示到n的第i位n的第i位当前匹配到AC自动机的j节点AC自动机的j节点的方案 转移就在AC自动机上跑 注意不能有前导零,可能有这种情况000000000000不能存在那么前导零就有问题 所以要单独把小于nn的位数的数单独算出来,等于nn的位数的数单独算出来最后加起来原创 2018-01-20 15:10:18 · 204 阅读 · 0 评论 -
Bzoj1030:[JSOI2007]文本生成器
题面BzojSolACACAC自动机上DPDPDP 总数−−-不合法# include <bits/stdc++.h># define RG register# define IL inline# define Fill(a, b) memset(a, b, sizeof(a))using namespace std;typedef long long ll...原创 2018-02-10 14:28:20 · 216 阅读 · 0 评论