JSOI2007:字符加密(后缀数组)
题意:
将长度为$n$的字符串排成一圈,对于$n$种排列方式按字典序从小到大输出最后一位。
题解:
1.将原串扩展成2倍(避免有些没有遍历到)。
2.建立后缀数组,对于$sa_{i}$小于$n$的输出第$sa_i+n-1$位即可。
代码:
1 | // luogu-judger-enable-o2 |
将长度为$n$的字符串排成一圈,对于$n$种排列方式按字典序从小到大输出最后一位。
1.将原串扩展成2倍(避免有些没有遍历到)。
2.建立后缀数组,对于$sa_{i}$小于$n$的输出第$sa_i+n-1$位即可。
1 | // luogu-judger-enable-o2 |