最长公共子串(10分)

最长公共子串(10分),第1张

最长公共子串(10分)

最长公共子串(10分)

序列中去掉若干(也可以不去掉)元素剩下的部分称为其子序列。对于给定的序列X= ,称序列Z= <21,
z2+ … 2>为X的一个子序列,仅当在X中存在一个递增序号序列< i. i2, … ik>,对所有的(1, 2, …
k)满足的j二勾j。例如,Z=是X=的一个子序列,X中相应的序号序列为<1, 2,
4, 6>。要求输入两个字符串,求它们的最长公共子序列(最长公共子串)及其长度。

输入格式:

首先输入一一个整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据在第- -行中输入主串s.在第二行中输入子审t,
s和t中不包含空格。输出格式:

对于每组测试,输出两行,第一-行是最长公共子串的长度,第二行是最长公共子串(以第一个串中字符的出现次序优先, 参看输出样例) .

输入样例:
4
abcfbc
abfcab
abfcab
abcfbc
输出样例:
4
abcb
4
abfc
#include
using namespace std;
int main(){
	int T;
	cin>>T;
	string s;
	string t;
	int ans[999]={0};
	int cnt=0;
	for(int cs=0;cs>s;
		cin>>t;
		int lens=s.length();
		int lent=t.length();
		
		for(int i=0;i					
										


					

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5594645.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存