记录编号 334853 评测结果 AAAAAAAAAA
题目名称 最长公共子序列 最终得分 100
用户昵称 GravatarZwoi_只会打表抄代码的蒟蒻 是否通过 通过
代码语言 C 运行时间 0.922 s
提交时间 2016-11-01 18:23:04 内存使用 96.05 MiB
显示代码纯文本
#include <stdio.h>
#include <string.h>

int max(int x,int y)
{
	if(x>y) return x;
	else return y;
}
int a[5010][5010],maxn,p;
int lb,lc,i,j;
char c[5010],b[5010];
int main()
{
	freopen("lcslength.in","r",stdin);
	freopen("lcslength.out","w",stdout);
	scanf("%s",b);
	lb=strlen(b);
	scanf("%s",c);
	lc=strlen(c);
	for(i=1;i<=lb-1;i++)
	{
		for(j=1;j<=lc-1;j++)
		{
			if(b[i-1]==c[j-1])
				a[i][j]=a[i-1][j-1]+1;
			else a[i][j]=max(a[i-1][j],a[i][j-1]);
		}
	}
	printf("%d\n",a[lb-1][lc-1]);
	
	return 0;
}