分析: 这是今天下午的考试题,推了2个小时,考试中A掉了 首先,循环串通过字符串hash可以O(1)判断:get_hash(l,r-len)==get_hash(l+len,r);显然可证. 我们其次可以发现,循环串的长度是所求串的长度的约数 之后我们可以发现,如果两个不同的子串是循环串,那么这两个子串长度的gcd也一定是循环串. 那么,我们就可以发现,将长度质因数分解,之后每次判断长度/这个质因子的所得长度能否构成循环串,如果能,就将长度除以这个质因子. 至于质因子,我们可以线筛...详情自己…