5718:反向子串

时间限制:2 S   /  内存限制:8192 KB
AC:21   /  Submit:132
问题描述

一个字符串s,可以选择s的任意一个子串,把这个子串反向,取代s中该子串的位置,该操作称为一次反向操作。(例如s="ABCDE",选择s中的子串"BCD",反向是"DCB",取代原有子串位置后,s="ADCBE")

现在已有一个字符串s,问是否可以通过一次反向操作或者不做任何操作,可以让s中的所有字符按从小到大的顺序排列。

输入描述

只有一组案例。

一个不含空格的字符串s。(长度不超过1e7)

输出描述

如果s可以通过一次反向操作或者不做任何操作,让s中的所有字符按从小到大的顺序排列,则输出Yes,否则输出No。不要换行。

样例输入复制样例

ADCCBE

样例输出

Yes

提示说明

本题建议用C/C++实现

把ADCCBE中的子串DCCB反向,即可让字符串编程ABCCDE,这样就让字符串里的所有字符从小到大排序了。

相关

25-26(1)第5次线上赛


Copyright 2016 - 2025 XUJC ACM Team
闽ICP备2020022076号-1