题解 | #HJ32 密码截取# (动归 *)
密码截取
https://www.nowcoder.com/practice/3cd4621963e8454594f00199f4536bb1
import java.io.InputStreamReader;
import java.util.Scanner;
import java.io.BufferedReader;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = "";
while ((s = br.readLine()) != null) {
System.out.println(check(s));
}
}
public static int check(String s) {
int len = s.length(), ans = 0;
boolean[][] dp = new boolean[len][len];
for (int i = 0; i < len; i++) dp[i][i] = true;
for (int r = 1; r < len; r++) {
for (int l = 0; l < r; l++) {
if (s.charAt(l) == s.charAt(r) && (r - l <= 2 || dp[l + 1][r - 1])) {
dp[l][r]=true;
ans=Math.max(ans,r-l+1);
}
}
}
return ans;
}
}