题意:给你一个字符串,这个字符串可以这样操作:把第一个字符放到最后一个形成一个新的字符串,记原式Rank为1,每操作一步Rank+1,问你这样操作得出的最小字典序的字符串的Rank和这样的字符串有几个,最大字典序的字符串的Rank和这样的字符串有几个. 思路:手动模拟操作复杂度O(n^2)果断超时,引入一种专门计算此情况的方法,复杂度O(n). 这里只说最小表示: 我们先拿两个指针i,j,分别指向s[0],s[1],将k初始化为0.然后我们循环计算s[i + k]是否等于s[j + k],直到找…