文章分类 -  后缀自动机

摘要:题目大意:求两个字符串的最长公共子串。 字符串界三大神器:Hash、自动机、平衡树。 建立一个后缀自动机,然后在其上跑另一个串,如果可以拓展那么就拓展,否则就跳到失配边,然后与此同时更新答案。 1 #include <iostream> 2 #include <algorithm> 3 #inclu 阅读全文
posted @ 2017-02-25 22:57 KingSann 阅读(143) 评论(0) 推荐(0)
摘要:对于len(Ti),len(Tj),随意乱搞就行了。 对于lcp(Ti,Tj),很显然如果将所有的后缀都搞出来的话比较好弄。 既然是要求lcp的和,那么搞到后缀树上去找节点就行了。 因为后缀树有压缩,所以没有分叉,直接树上dp就行。(即使有分叉也没啥卵用。) 但是如何统计分叉呢? 计数原理。 对于每 阅读全文
posted @ 2017-02-24 20:19 KingSann 阅读(155) 评论(0) 推荐(0)
摘要:最小表示法or后缀自动机。。。 (一个都不会啊,字符串只会hash的说) 1 #include <iostream> 2 #include <algorithm> 3 #include <cstdio> 4 #include <cstring> 5 #include <cstdlib> 6 #inc 阅读全文
posted @ 2017-02-19 11:33 KingSann 阅读(126) 评论(0) 推荐(0)