题目标题: 计算两个字符串的最大公共字串的长度。字符不区分大写和小写 具体描写叙述: 接口说明 原型: int getCommonStrLength(char * pFirstStr, char * pSecondStr); 输入參数: char * pFirstStr //第一个字符串 char * pSecondStr//第二个字符串
输入 两个字符串 输出 输出一个整数
例子输入 asdfas werasdfaswer例子输出 6
|
|
|
import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String str1 = scan.next().toLowerCase();
String str2 = scan.next().toLowerCase();
if(str1.length() < str2.length())
getLen(str1,str2);
else
getLen(str2, str1);
}
private static void getLen(String str1, String str2) {
int [] a = new int[str2.length()];
Arrays.fill(a, 0);
for (int i = 0; i < str2.length(); i++) {
for (int j = 0; j < str1.length(); j++) {
if(str2.charAt(i)==str1.charAt(j))
a[i]=1;
}
}
StringBuffer sb = new StringBuffer();
for (int i = 0; i < a.length; i++) {
sb.append(a[i]);
}
String s = sb.toString();
String[] result = s.split("0");
int max = 0;
for (int i = 0; i < result.length; i++) {
if(result[i].length() > max)
max = result[i].length();
}
System.out.println(max);
}
}