题目描述
小红拿到了一个只包含 'a' , 'b' , 'c' 三种字符的字符串。
小红想知道,这个字符串最短的、长度超过 1 的回文子串的长度是多少?
子串定义:字符串取一段连续的区间。例如"abcca"的子串有"ab"、"bcca"等,但"aca"则不是它的子串。
回文的定义:一个字符串正着读和倒着读都是相同的,那么定义它的回文的。
输入描述:
一个只包含 'a' , 'b' , 'c' 三种字符的字符串。
数据范围:字符串长度不小于2,且不超过100
输出描述:
如果不存在长度超过1的回文子串,则输出-1。
否则输出长度超过1的最短回文子串的长度。
分析:
回文串只有两类 :xx 或者 xyx两种类型,以abccba为例,最短回文串长度不是6 ,而是 cc 2;
所以此题中,最短回文串结果只有可能等于2或者3;没有则返回-1;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String target = in.nextLine();
Main main = new Main();
System.out.println(main.getResult(target));
}
private int getResult(String tar

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



