【BZOJ】1212 [HNOI2004]L语言 Trie
来源:互联网 发布:js算法题 编辑:程序博客网 时间:2024/05/19 14:19
题目传送门
这题连AC自动机都省略了,直接把所有模式串插入Trie树中,然后对于每个文本串,暴力枚举当前节点以后的子串是否在Trie树中存在。
因为这题的模式串长度不大于10,n和m都不大于20,所以暴力枚举就可以轻松水过。
附上AC代码:
#include <cstdio>#include <cstring>using namespace std;int n,m,c[2010][26],size,f[1000010];bool b[2010*27];char s[1000010];inline void insert(char *s){int len=strlen(s+1),now=0;for (int i=1; i<=len; ++i){if (!c[now][s[i]-'a']) c[now][s[i]-'a']=++size;now=c[now][s[i]-'a'];}b[now]=1;}inline int query(int t){int ans=0,len=strlen(s+1);f[0]=t;for (int i=0; i<=len; ++i){if (f[i]!=t) continue; else ans=i;for (int now=0,j=i+1; j<=len; ++j){now=c[now][s[j]-'a'];if (!now) break;if (b[now]) f[j]=t;}}return ans;}int main(void){scanf("%d%d",&n,&m);for (int i=1; i<=n; ++i) scanf("%s",s+1),insert(s);for (int i=1; i<=m; ++i) scanf("%s",s+1),printf("%d\n",query(i));return 0;}
阅读全文
0 0
- 【BZOJ】1212 [HNOI2004]L语言 Trie
- BZOJ 1212: [HNOI2004]L语言
- bzoj 1212: [HNOI2004]L语言
- bzoj 1212: [HNOI2004]L语言
- bzoj 1212 [HNOI2004]L语言
- trie-[HNOI2004]L语言
- BZOJ 1212 HNOI2004 L语言 AC自动机(Trie树)+动态规划
- [HNOI2004] L语言 --trie树
- BZOJ 1212: [HNOI2004]L语言 AC自动机
- 大视野1212--[HNOI2004]L语言(Trie+DP)
- 1212: [HNOI2004]L语言
- 1212: [HNOI2004]L语言
- bzoj1212: [HNOI2004]L语言 Trie+dp
- 【BZOJ1212】[HNOI2004]L语言【Trie】【暴力】
- bzoj1212 [HNOI2004]L语言(Trie+暴力)
- [bzoj1212] [HNOI2004]L语言(trie+dp)
- [BZOJ1212]-[HNOI2004]L语言-trie+DP
- bzoj 1212: [HNOI2004]L语言(AC自动机+DP)
- C语言经典一百例
- MySQL常用内置函数说明
- 快速傅立叶变换(FFT)
- 欢迎使用CSDN-markdown编辑器
- Problem-1248 寒冰王座
- 【BZOJ】1212 [HNOI2004]L语言 Trie
- pxe全自动化安装虚拟机
- CSharp直接连接MySQL
- 为什么C++的SEH不提供finally
- Hexo博客添加SEO-评论系统-阅读统计-站长统计
- openGL ES进阶教程(五)制作一个简单的VR播放器,播放全景视频
- sharedpreference入门
- 推荐给大家一个优惠卷搜索网站
- java分布式服务框架Dubbo的介绍与使用