题解 | #公共子串计算#

公共子串计算

http://www.nowcoder.com/practice/98dc82c094e043ccb7e0570e5342dd1b

#include<string.h>
int fun(char str[],char arr[],int len1,int len2)
{
    int p1=0,p2=0,count=0,max=0;
    for(int i=0;i<len1;i++)
    {
        for(int j=0;j<len2;j++)
        {
            if(str[i]==arr[j])
            {
                count=0;
                p1=i;
                p2=j;
                while(str[p1]==arr[p2]&&p1<len1&&p2<len2)
                {
                    count=count+1;
                    p1=p1+1;
                    p2=p2+1;
                }
                if(count>max)
                {
                    max=count;
                }
            }
        }
    }
    return max;
}
int main()
{
    char str[151];
    while(scanf("%s",str)!=EOF)
    {
        char arr[151];
        scanf("%s",arr);
        int len1=strlen(str);
        int len2=strlen(arr);
        printf("%d\n",fun(str,arr,len1,len2));
    }
    return 0;
}
全部评论

相关推荐

09-24 12:15
门头沟学院 C++
Brooks178:【DJI 大疆创新】同学您好!感谢您关注大疆创新-"拓疆者"校园招聘并投递后端开发工程师(互联网事业部-深圳)。经过慎重考虑,我们认为目前您可能不是最适合该职位的人选,因此无法为您继续推进该职位的后续安排。我们会将您的信息保留在人才库中,以便未来有合适机会时再与您联系。再次感谢您的信任与参与,祝您求职顺利!
点赞 评论 收藏
分享
小火柴燃烧吧:接啊,接了之后反手在咸鱼找个大学生搞一下,量大从优
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务