Queries on a String
思路分析
直接按题意模拟字符串的每次移位操作会超时。
优化思路:对于任何一个位置的字符,它经过一次区间轮转后的新位置是确定的。可以用一个数组记录每个字符最终的位置,避免真的去移动字符。
公式:字符的最终位置 = (当前位置 + 旋转次数) % 区间长度 + 区间起点
小结
- 字符串轮转类问题,直接模拟往往不是最优解
- 可以用数学方式直接算出最终位置,避免逐次移动
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Alignm-ent!
