题解 | #密码截取#
密码截取
https://www.nowcoder.com/practice/3cd4621963e8454594f00199f4536bb1
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
String str = in.nextLine();
int desLen = 0;
for (int i = 0; i < str.length(); i++) {
//ABA类型
int len1 = getLongest(str, i, i);
//ABBA类型
int len2 = getLongest(str, i, i + 1);
desLen = Math.max(desLen, Math.max(len1, len2));
}
System.out.println(desLen);
}
}
public static int getLongest(String str, int left, int right) {
//从中心点向两端扩散
while (left >= 0 && right < str.length() &&str.charAt(left) == str.charAt(right)) {
left--;
right++;
}
return right - left - 1;
}
}
