LCIS

Accepts: 109
Submissions: 775
Time Limit: 4000/2000 MS (Java/Others)
Memory Limit: 65536/65536 K (Java/Others)
Problem Description
Alex has two sequences $a_1,a_2,...,a_n$ and $b_1,b_2,...,b_m$. He wants find a longest common subsequence that consists of consecutive values in increasing order.
Input
There are multiple test cases. The first line of input contains an integer $T$, indicating the number of test cases. For each test case: The first line contains two integers $n$ and $m$ $(1 \le n, m \le 100000)$ -- the length of two sequences. The second line contains $n$ integers: $a_1, a_2, ..., a_n$ $(1 \le a_i \le 10^6)$. The third line contains $n$ integers: $b_1, b_2, ..., b_m$ $(1 \le b_i \le 10^6)$. There are at most $1000$ test cases and the sum of $n$ and $m$ does not exceed $2 \times 10^6$.
Output
For each test case, output the length of longest common subsequence that consists of consecutive values in increasing order.
Sample Input
3
3 3
1 2 3
3 2 1
10 5
1 23 2 32 4 3 4 5 6 1
1 2 3 4 5
1 1
2
1
Sample Output
1
5
0