首页 > 电脑

求输出怎么加进去!!

更新时间2019-01-09 23:48:31

【问题描述】最长公共子串问题

假设有两个字符串(可能包含空格),找出其中最长的公共连续子串,并输出其长度。

输入描述:

输入为两行字符串(可能包含空格),长度均小于等于50

 

输出描述:

输出为一个整数,表示最长公共连续子串的长度

输入例子:

abcde

abgde

输出例子:

2

ab

de


#include <iostream>

#include <string>

using namespace std;

#define N 50

void main()

  {

      char a[N],b[N],c[N];

      int dp[N][N]={0};       

      int  chang=0;

      gets(a);   //cin.getline(a,51);

      gets(b);

 size_t i,j;

 

      for( i=0;i<a[i]/*!=''*/;i++)      //如果两个位置的元素相等,矩阵值为1

        {

           for( j=0;j<b[j]/*!=''*/;j++)

              {

                 if(a[i]==b[j])

                     dp[i][j]=1;

              }

        }      

      for( i=0;i<a[i]/*!=''*/;i++)      //依次找对角线最大连续1的个数

        {

           for( j=0;j<b[j]/*!=''*/;j++)

              {

                 int m=i;

                 int n=j;

                 int len=0;

                 while(dp[m++][n++]==1)

                     len++;

                 if(chang<len)

                     chang=len;

              }

       }

     cout<<chang<<endl;

  }


修改好的参考

求输出怎么加进去!!


上一篇:关于机械键盘

下一篇:我这个笔记本电脑配置玩dnfLOL哪一个系统兼容性好,我之前用win8.1就是dnf里特定情况掉线