string matching question

Given two string X and Y. The task is to find the length of longest subsequence of string X which is substring in sequence Y.

Input:
The first line of input contains an integer T denoting the number of test cases. Then T test cases follow. The first line of each test case contains integers N and M denoting the length of strings X and Y.

The second line of each test case contains the two strings X and Y. The strings X and Y consist of only lower case english alphabets.

Output:
Output the length of the longest subsequence of string X which is also a substring of Y. Print the answer in a new line for each test case.

Constraints:
1<= T <=100
1<= N, M <=1000

Example:
Input:
1
4 8
abcd bacdbdcd

Output:
3

my code is-

but I am not getting correct answer, can anyone please suggest me the new logic for this problem?