随笔分类 - 字符串-SAM
摘要:记一下,待更
阅读全文
摘要:题目大意 题解 裸题 建SAM,在SAM上面数位dp维护位置和当前长度即可 注意要先枚举新加的数,然后统一跳fail直到可以往下接,否则时间不能保证 时间复杂度O(10*nd^2) code #include <bits/stdc++.h> #define fo(a,b,c) for (a=b; a
阅读全文
摘要:题目大意 题解 不难但是因为字符串太菜所以想了很久 排行榜上跑得快的一些做法假了,不知道有没有更简单的做法 结论:存在一种最优序列,使得Si是Si-1的后缀,证明把任意一种最优的不断删掉末尾将其顶住 也可以同时满足开头但是不需要,这样可以写个O(n^2)KMP暴力来拍 把SAM建出来,同一个点上的串
阅读全文
该文被密码保护。
摘要:题目描述 题解 答案=f[i],大于等于是因为可以通过删减变成f[i] 1 假设判断是O(log),这样做是log\^2 发现f[i+1] =f[i] 1,即至少为i删掉一个字符,因此有f[i]=|S|就是 还有这道题并不需要考虑一个节点对应的多个串之间的关系,因为丢进去的是整个后缀,是主链上的点上
阅读全文