摘要: 题目给出一个长为2000的字符串,和10000询问,每次询问从第l到第r个字符中间有多少个不同的子串。其实,全部预处理。f[i][j]表示从i到j个字符的子串数。重构2000遍SAM。对于新加入的字符,其所对应的last点,新增加的新子串数位step[last]-step[pre[last]]。原因... 阅读全文
posted @ 2014-06-20 16:56 092000 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 题目意思是给你一个字符串,f[x]是长度为x的子串中,出现个数最多的那个串的出现次数。给出原串,依次输出f[1],f[2],……。后缀自动机。对于某一个状态,right[]值的大小就是出现的次数,而且是对于长为step[]的子串的出现次数。因为小于step值的串在前面已经加了,在pre指针线上面的状... 阅读全文
posted @ 2014-06-20 16:52 092000 阅读(473) 评论(0) 推荐(0) 编辑