摘要: 代码如下 cpp int trie[maxn][26],tot=1,ed[maxn]; void insert(char s){ int len=strlen(s+1),now=1; for(int i=1;i 阅读全文
posted @ 2018-10-27 21:17 shellpicker 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 字符串的最小表示是该字符串的所有循环同构串中字典序最小的那个串。 根据其循环同构结构,采用破环成链,即: 倍增 的形式来表示。 引理:若两个循环同构串$s[i+k] using namespace std; const int maxn=1e6+10; char s[maxn]; int n; vo 阅读全文
posted @ 2018-10-27 21:02 shellpicker 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 引理:$s[1,i]$ 具有长度为 $len$ 的循环节的充要条件是:$len\ |\ i,s[1,i len]=s[len+1,i]$。 代码如下 阅读全文
posted @ 2018-10-27 00:06 shellpicker 阅读(209) 评论(0) 推荐(0) 编辑