给你一个由小写英文字母组成的字符串 s。
在一次操作中,你可以选择 s 的任意 (但 不能 是整个字符串),并将其按 非降序字母顺序 进行 排序。
返回使 s 按 非降序 排列所需的 最小 操作次数。如果无法做到,则返回 -1。
示例 1:
输入: s = "dog"
输出: 1
解释:
"og" 排序为 "go"。s = "dgo",已按升序排列。因此,答案是 1。示例 2:
输入: s = "card"
输出: 2
解释:
"car" 排序为 "acr",得到 s = "acrd"。"rd" 排序为 "dr",得到 s = "acdr",已按升序排列。因此,答案是 2。示例 3:
输入: s = "gf"
输出: -1
解释:
s 进行排序。因此,答案是 -1。
提示:
1 <= s.length <= 105s 仅由小写英文字母组成。