QBSTR - Xâu con chung dài nhất

Tác giả: khuc_tuan

Ngôn ngữ: C++

#include <iostream>
using namespace std;

char a[2200], b[2200];
int f[2200][2200];

int main() {
	gets(a);
	gets(b);
	int m = strlen(a);
	int n = strlen(b);
	for(int i=0;i<=m;++i) for(int j=0;j<=n;++j)
		if(i==0 || j==0) f[i][j] = 0;
		else f[i][j] = max(max( f[i][j-1], f[i-1][j]), (a[i-1]==b[j-1]) ? (f[i-1][j-1]+1) : 0);
	cout << f[m][n] << endl;
	return 0;
}

Download