摘要:[ZJOI2015]诸神眷顾的幻想乡 题意 树上每个点代表一个字符,问树上路径可以组成多少不同的字符串(叶子最多有20个) 题解 树上的路径一定是叶子为根的一条从上到下的路径,而叶子有很小,我们就可以把所有叶子构成的 trie 建成一个广义的 sam,最后统计不同字串个数即可 #include<io 阅读全文
posted @ 2020-07-24 17:28 waing 阅读(41) 评论(0) 推荐(0) 编辑
摘要:CF 616 div1 A 题解 若 $k \geq m 1$ ,我们可以任意指定顺序,我们求每个方案的最大值即可。 若 $k include include include define ll long long using namespace std; int read() { int k=0, 阅读全文
posted @ 2020-02-05 16:05 waing 阅读(212) 评论(0) 推荐(0) 编辑
摘要:NOI2018 你的名字(68pts) 题意 给一个字符串 $S$ ,再给 $m$ 个字符串 $T$ ,问 $T$ 有多少 连续非空字串 不是 $S$ 的 连续非空字串 。 $$ |S| \le 5\times10^5 , \sum{T} \le10^6 $$ 题解 我们可以把题目转化为 $T$ 有 阅读全文
posted @ 2020-01-30 17:25 waing 阅读(78) 评论(0) 推荐(0) 编辑
摘要:CF 612 div1 三道大水题 A 题解 dp,用 $ f[i][j][0/1]$ 表示到第 $i$ 个空格且一共填了 $j$ 个奇数,末尾为奇数或偶数的最小值 转移见代码 ~~~cpp include include include include define ll long long us 阅读全文
posted @ 2020-01-18 18:55 waing 阅读(149) 评论(0) 推荐(0) 编辑
摘要:后缀自动机 相关知识点可移步 "oi wiki" , ~~相关证明太多实在不想写~~ 下面讲几个经典题目 【模板】后缀自动机 (SAM) "题目链接" 题意 请你求出 $S$ 的所有出现次数不为 11 的子串的出现次数乘上该子串长度的最大值。$ |S| \le 10^6$ 题解 我们首先需要计算后缀 阅读全文
posted @ 2020-01-15 14:10 waing 阅读(93) 评论(0) 推荐(0) 编辑
摘要:POJ2778 DNA Sequence 题意 给 $m$ 个字符串(只包含 A , T , C , G ), 问有多少长度为 $n$ 的字符串不含有这 $m$ 个字串. 其中 $0 \le m \le 10$, $1 \le n \le 2 \times 10^9$, 字符串长度不超过 $10$ 阅读全文
posted @ 2020-01-12 19:01 waing 阅读(74) 评论(0) 推荐(0) 编辑
摘要:题目描述 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有 2828 个按键,分别印有 2626 个小写英文字母和 B、P 两个字母。经阿狸研究发现,这个打字机是这样工作的: 输入小写字母,打字机的一个凹槽中会加入这个字母(这个字母加在凹槽的最后)。 按一下印有 B 的按键, 阅读全文
posted @ 2020-01-10 22:43 waing 阅读(92) 评论(0) 推荐(0) 编辑
摘要:AC 自动机可以用来处理多模式匹配,AC 自动机是以 TRIE 的结构为基础 ,结合 KMP 的思想 建立的。 ** 具体步骤 ** 1.构建 Trie 2.构建失配指针 3.进行多模式匹配 例题 洛谷3808 AC自动机(简单版) #include<iostream> #include<cstdi 阅读全文
posted @ 2020-01-09 20:28 waing 阅读(96) 评论(0) 推荐(0) 编辑