记录编号 161073 评测结果 AAAAAAAAAA
题目名称 最长公共子序列 最终得分 100
用户昵称 Gravatar一個人的雨 是否通过 通过
代码语言 C++ 运行时间 0.657 s
提交时间 2015-05-01 10:01:11 内存使用 95.72 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cstdlib>
using namespace std;
int v[5001][5001];
int main()
{
	freopen("lcslength.in","r",stdin);
	freopen("lcslength.out","w",stdout);
	string s1,s2;
	cin>>s1;
	cin>>s2;
	int n=s1.size(),m=s2.size();
	n--;m--;
	for (int i=1;i<=n;++i)
	 for (int j=1;j<=m;++j)
	  if (s1[i-1]==s2[j-1]) v[i][j]=v[i-1][j-1]+1;
	   else v[i][j]=max(v[i-1][j],v[i][j-1]);
	cout<<v[n][m];
	return 0;
}