1 条题解
-
0
让我们看看s的第一个和最后一个字符。注意,如果s[1]=s[n](其中n=字符串s的长度),则 A(s)始终等于B(s)。
例如,可以通过归纳法证明:如果s由相等的字符组成,那么A(s)=B(s)=0;如果s类似 abb…ba(或baa…ab)的结构,那么A(s)=B(s)=1。
否则,中间至少有一个字符s[i]等于s[1]和s[n]。所以我们可以在s[1-i]和s[i-n]中拆分字符串 s。这两个字符串都有A(s)=B(s)(通过归纳),所以我们的字符串s也有A(s)=B(s)。
因此,如果s1=sn,那么答案是0,并且我们打印字符串时不动。否则,我们替换s1或sn并得 到所需的字符串。若不一样只需修改开头或结尾的字符。
- 1
信息
- ID
- 149
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 23
- 已通过
- 10
- 上传者