做了某题之后发现trie的AC自动机太垃圾了,动不动就TLE,然后我就去学了trie图。 #include<iostream> #include<cstdio> using namespace std; struct trie { int count; trie *fail,*nxt[26]; tr ...
分类:
其他好文 时间:
2019-06-14 21:25:30
阅读次数:
89
获取Java接口的所有实现类 前言:想看基于spring 的最简单实现方法,请直接看 第七步。 本文价值在于 包扫描的原理探究和实现 一、背景 项目开发中,使用Netty做服务端,保持长连接与客户端(agent)通讯。Netty服务端需要根据不同消息类型,加载对应的Processer(消息处理器)对 ...
分类:
编程语言 时间:
2019-06-11 13:11:43
阅读次数:
132
题意:让你求从1走到n的最短路,但是有些路径是不能走的,且走到每次走只能走比当前点大的点 解题思路:看到有些路径是不能走的,想到用AC自动机标记结点,跑出一个trie图来,在trie图上进行路径更新,dist【i】【j】表示在trie状态结点j的时候,到正常结点i的花费 代码: ...
分类:
其他好文 时间:
2019-05-03 18:01:54
阅读次数:
139
made。。。发财谷题解基本是Trie图。。。 我永远喜欢AC自动机.jpg 下面是 "P3808 【模板】AC自动机(简单版)" 的两种写法 Trie图 cpp const int MAXN = 1000010; int t[MAXN][26], word[MAXN], fail[MAXN], c ...
分类:
其他好文 时间:
2019-03-19 11:56:10
阅读次数:
150
个人码风:大括号换行,4格缩进,轻微压行,行内空格极随意。 字符串 KMP c++ const int N=1000005; char s[N], t[N]; int len_s, len_t, nxt[N]; void GetNext(char s) { for (int i=2, k=0; iy ...
分类:
其他好文 时间:
2019-03-07 00:48:46
阅读次数:
150
题目链接: "[JSOI2009]密码" 我们先看第一问:输出方案数 我们把所有给出来的串丢到AC自动机里面去,然后在建出来的$trie$图上跑dp 由于$n\leq 10$我们很自然的就想到了状压 记$dp[i][j][sta]$表示原串匹配到了第$i$位,在AC自动机里走到了第$j$个节点,已经 ...
分类:
Web程序 时间:
2019-03-04 09:19:03
阅读次数:
196
Trie树(字典树) 树中任一结点p都对应于一个字符串S,S由从根出发走到p所经过的边上的字符构成 数据结构 操作 插入串 (复杂度为模式串长度) Trie图(AC自动机) 可以由Trie树为基础构造 终止节点:每个模式串最后一个结点 危险结点:终止节点和前缀指向危险结点的结点。 包含前缀指针(ne ...
分类:
其他好文 时间:
2018-12-30 17:25:47
阅读次数:
189
在Trie图上找环,若有环则说明可以组成一个无限长的串 ...
分类:
其他好文 时间:
2018-11-24 15:18:02
阅读次数:
132
题目描述: 给出n个串(总长<=30000),求是否有一个无限长的串,使得不包含任何一个给出串。 题解: 建trie图,然后搜索。 搜索时如果这个点搜过以后无法return true,那么我们可以标记这个点。 只要再次搜到这个点直接return false 代码: ...
分类:
其他好文 时间:
2018-11-24 14:30:30
阅读次数:
146
题面链接 "洛咕" sol 神题,幸好我不是SD的QAQ。 假设你们都会$O(n^3m^3)$的高斯消元,具体来说就是建出$Trie$图然后套游走的板子。 然后我们发现可以把不能匹配任何串的概率压到一起。 考虑一个不能匹配任何串的$S$。一个串$A_i$获胜当且仅当最后串是这样的:$S+A_i$。 ...
分类:
其他好文 时间:
2018-11-06 23:37:57
阅读次数:
157