#C03L09P07. C03.L09.字符串函数(二).getline、erase、insert()函数.练习题4.翻转字符串

C03.L09.字符串函数(二).getline、erase、insert()函数.练习题4.翻转字符串

题目描述

给你一个字符串 s ,你可以进行一种操作:选取前 i 个字母,得到一个前缀,把它翻转。你可以操作任意次,要求你最后得到的字符串是最小的。

当然,为了增加趣味性,我们有一个限制:你依次取的前缀的长度一定要是递增的。

比如:s = "BCDAF" ,你可以先把前 3 个翻转,得到 "DCBAF" ,然后把前 4 个翻转,得到 "ABCDF" 。

输入格式

第一行为一个字符串 s ( s 的长度在 1 到 50 之间 )

输出格式

你得到的最小字符串。

样例

ABBA
AABB
ACAB
AACB
HKJABCJOBWA
AAJHKBCJOBW

样例解释
样例3:HKJABCJOBWA -> KHJABCJOBWA —> AJHKBCJOBWA -> WBOJCBKHJAA -> AAJHKBCJOBW

  1. HKJABCJOBWA 的前 2 个字母翻转,得到 KHJABCJOBWA
  2. KHJABCJOBWA 的前 3 个字母翻转,得到 AJHKBCJOBWA
  3. AJHKBCJOBWA 的前 10 个字母翻转,得到 WBOJCBKHJAA
  4. WBOJCBKHJAA 的前 11 个字母翻转,得到 AAJHKBCJOBW