Input
Output
Example Input
ABCBDAB BDCABA
Example Output
4
#include<stdio.h>
#include<string.h>
int main()
{
char str1[510],str2[510];
int len1,len2,i,j,a[510][510];
while(~scanf("%s %s",str1,str2))
{
len1=strlen(str1);
len2=strlen(str2);
for(i=0;i<=len1;i++)
a[i][0]=0;
for(j=0;j<=len2;j++)
a[0][j]=0;
for(i=1;i<=len1;i++)
{
for(j=1;j<=len2;j++)
{
if(str1[i-1]==str2[j-1])
a[i][j]=a[i-1][j-1]+1;
else if(a[i-1][j]>a[i][j-1])
a[i][j]=a[i-1][j];
else
a[i][j]=a[i][j-1];
}
}
printf("%d\n",a[len1][len2]);
}
return 0;
}