牛牛的字符反转
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

现在有一个长度为n的字符串,进行循环右移k位的操作,少对这个字符串进行几次区间反转操作能实现循环右移k位呢。反转操作指字符串某一区间内的字符反转,例如“123456”,区间[3,5]进行反转字符串变为“125436”。假设字符串每一位都不同。给定一个字符串长度n和循环右移次数k,求最少反转次数。

示例1

输入

复制
3,4

返回值

复制
2

说明

例如字符串为123 那么循环右移4次变为312,用区间反转操作代替的话,就是先对[1,3]反转得到321,再对[2,3]反转得到312,最少进行两次反转操作  

备注: