题解 | #公共子串计算#
公共子串计算
https://www.nowcoder.com/practice/98dc82c094e043ccb7e0570e5342dd1b
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner scan = new Scanner(System.in);
        String s1 = scan.next();
        String s2 = scan.next();
        int cols = s1.length() + 1;
        int rows = s2.length() + 1;
        char[] ar1 = s1.toCharArray();
        char[] ar2 = s2.toCharArray();
        int[][] arr = new int[rows][cols];
        for (int i = 1; i < rows; i++) {
            for (int j = 1; j < cols; j++) {
                if (ar1[j - 1] == ar2[i - 1] )
                    arr[i][j] = arr[i - 1][j - 1] + 1;
            }
        }
        int max = 0;
        for (int i = 1; i < rows; i++) {
            for (int j = 1; j < cols; j++) {
                if (arr[i][j] > max)
                    max = arr[i][j];
            }
        }
        System.out.println(max);
    }
}
 正浩创新EcoFlow公司福利 501人发布
正浩创新EcoFlow公司福利 501人发布