牛客题解 | 平方串
题目
题解
题目难度:中等
知识点:LCS(最长公共子序列问题),动态规划
分析:
本题实际是要找出s的最长子序列,看到这个问题就应该想到利用动态规划去解决。一般是找s1、s2两个字符串中的最长子序列,那么该题中就可以遍历s,以每个字符位置作为分割点,将s分割成s1和s2两个字符串,利用动态规划去求解s1和s2中的最长子序列,结果存储在dp[i][j]的二维数组中。对于dp数组,下标从1开始对应字符串中的0下标对应的字符。
通过上面一个dp数组表,就可以算出最长子序列长度为3
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
int len = s.length();
int res = 0;
for(int i = 0; i

浙公网安备 33010602011771号