慢慢研究可以发现,可以用扩展kmp来求.由于扩展kmp的next[]只有一部分,当前位子前面那部分和母串的后部分,所以可以将字符串复制接在后面一次. 先求如果next[]>0&&next[]!=len,那么只要考虑后面那位的大小比较.如果next[]>=len 那就是相同.如果next[]==0,就是没有相同的,直接比较开头. 这样做还是会超时,我tle无数发. 还要去掉重复的部分,题目要求不同的.所以求出循环部分,只要考虑一部分即可. //扩展kmp求最小循环节 int kk
Revolving Digits Description One day Silence is interested in revolving the digits of a positive integer. In the revolving operation, he can put several last digits to the front of the integer. Of course, he can put all the digits to the front, so
Revolving Digits Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 24729 Accepted Submission(s): 5381 Problem Description One day Silence is interested in revolving the digits of a positive int