公共字串计算
题目描述
题目标题:
计算两个字符串的最大公共字串的长度,字符不区分大小写
详细描述:
接口说明
原型:
int getCommonStrLength(char * pFirstStr, char * pSecondStr);
输入参数:
char * pFirstStr //第一个字符串
char * pSecondStr//第二个字符串
输入描述:
输入两个字符串
输出描述:
输出一个整数
输入例子:
asdfas werasdfaswer
输出例子:
6
解答代码:
#include <iostream>
#include <vector>
#include <string>
#include <fstream>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
char s1[512],s2[512];
int i,j,count=0;
int maxA=0;
while(cin.getline(s1,512),cin.getline(s2,512))
{
int length1=strlen(s1);
int length2=strlen(s2);
int k1,k2;
count=0;
maxA=0;
for(i=0; i<length1; i++)
{
for(j=0; j<length2; j++)
{
k1=i;
k2=j;
count=0;
while(s1[k1]==s2[k2] && s1[k1]!='\0' && s2[k2]!='\0')
{
k1++;
k2++;
count++;
}
if(count>maxA)
{
maxA=count;
count=0;
}
}
}
cout<<maxA<<endl;
}
return 0;
}