[语言月赛 202307] 扶苏和串
You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
题目背景
众所周知,每个月入门赛的字符串题都是扶苏来枚举 idea 出出来的。
题目描述
给定一个 01 字符串 ,你可以任选 的一个非空子串,把这个子串在 中翻转一次。
问你能得到字典序最小的字符串是什么?
形式化的,你可以选择一个区间 满足 ,构造一个串 满足:
$$t_i = \begin{cases}s_i, &i < l \text{ 或 } i > r \\ s_{r - (i - l)}, & l \leq i \leq r\end{cases} $$这里字符串的下标从 开始。
最小化字符串 的字典序。
输入格式
输入只有一行一个字符串,表示 。
输出格式
输出一行一个字符串,表示得到的字典序最小的字符串。
101
011
0010100
0000101
提示
样例 1 解释
,翻转下划线标出的子串,得到
样例 2 解释
,翻转下划线标出的子串,得到 。
数据规模与约定
下面用 表示输入字符串的长度。
- 对 的数据,。
- 对 的数据,。
- 另有 的数据, 只含字符 。
- 另有 的数据, 只含字符 。
- 对 的数据,。 只含字符 。
初一从0开始学C++(期中复习)
- Status
- Done
- Problem
- 5
- Open Since
- 2024-4-22 0:00
- Deadline
- 2024-6-30 23:59
- Extension
- 24 hour(s)