【BZOJ3940】【Usaco2015 Feb】Censoring AC自动机
来源:互联网 发布:plsql 格式化sql 编辑:程序博客网 时间:2024/05/29 14:31
链接:
#include <stdio.h>int main(){ puts("转载请注明出处[vmurder]谢谢"); puts("网址:blog.csdn.net/vmurder/article/details/44960463");}
题意:
题意同BZOJ3942,不过要删除的串是多串
http://blog.csdn.net/vmurder/article/details/44959895
题解:
……思路一模一样,除了不用kmp用AC自动机
代码:
#include <queue>#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define N 101000#define T 26#define inf 0x3f3f3f3fusing namespace std;char s[N];struct Eli{ int son[N][T],len[N],cnt; char s[N]; void insert() { scanf("%s",s); int i,x=0,alp; for(i=0;s[i];i++) { alp=s[i]-'a'; if(!son[x][alp])son[x][alp]=++cnt; x=son[x][alp]; } len[x]=max(len[x],i); } int fail[N]; void keep() { queue<int>q; q.push(0); int i,u,v; while(!q.empty()) { u=q.front(),q.pop(); len[u]=max(len[u],len[fail[u]]); for(i=0;i<T;i++) { if(v=son[u][i]) { if(!u)fail[v]=0; else fail[v]=son[fail[u]][i]; q.push(v); } else son[u][i]=son[fail[u]][i]; } } }}eli;int f[N],stk[N],top;int main(){ freopen("test.in","r",stdin); int i,n; scanf("%s%d",s+1,&n); while(n--)eli.insert(); eli.keep(); for(i=1;s[i];i++) { f[i]=eli.son[f[stk[top]]][s[i]-'a']; stk[++top]=i; top-=eli.len[f[i]]; } for(i=1;i<=top;i++)printf("%c",s[stk[i]]); return 0;}
0 0
- 【BZOJ3940】【Usaco2015 Feb】Censoring AC自动机
- 【bzoj3940】[Usaco2015 Feb]Censoring AC自动机
- 【BZOJ3940】[Usaco2015 Feb]Censoring【AC自动机 / KMP】
- bzoj3940[Usaco2015 Feb]Censoring AC自动机
- [BZOJ3940][Usaco2015 Feb]Censoring(AC自动机+栈)
- BZOJ 3940 Usaco2015 Feb Censoring AC自动机
- 【BZOJ3942】[Usaco2015 Feb]Censoring【AC自动机 / KMP】
- 【BZOJ 3940】[Usaco2015 Feb]Censoring AC自动机
- BZOJ 3940: [Usaco2015 Feb]Censoring AC自动机
- bzoj 3940: [Usaco2015 Feb]Censoring AC自动机
- [BZOJ]3940: [Usaco2015 Feb]Censoring AC自动机
- 【AC自动机】【bzoj3940】Censoring
- [BZOJ3942] [Usaco2015 Feb]Censoring
- 【BZOJ3942】【Usaco2015 Feb】Censoring KMP
- 【bzoj3942】 [Usaco2015 Feb]Censoring KMP
- 3942: [Usaco2015 Feb]Censoring|Kmp
- 3942: [Usaco2015 Feb]Censoring KMP
- BZOJ 3940 [Usaco2015 Feb]Censoring
- 参考解决iOS7中scrollView设置了contentSize后仍然不能滑动的问题
- CSS学习笔记
- android monkey的运行
- 第六周项目一—深复制体验
- 第一节 常用组件 之 Source Qualifier 概述
- 【BZOJ3940】【Usaco2015 Feb】Censoring AC自动机
- Json转换利器Gson之实例一-简单对象转化和带泛型的List转化
- 逆序排列 --- 蓝桥杯
- for(){}与iterator()遍历循环的区别
- jtds驱动更新对一个老问题的解决。
- 今天开通技术博客,为更好的自己
- Eclipse中android项目如何导入第三方jar包的正确步骤
- C++标准输入输出格式
- Java代码查看系统默认字符集编码