LCIS

Time Limit: 2000ms
Memory Limit: 65536KB
This problem will be judged on HDU. Original ID: 5904
64-bit integer IO format: %I64d      Java class name: Main

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

Source

Language: 
Theme: 
Share Code? 

Powered by NB231 | Current Style: .