題目描述
有很多張卡牌,每張卡牌上都寫著一個 $1$ 到 $1000$ 之間的整數。安娜(Anna)和布魯諾(Bruno)使用這些卡牌玩下面的遊戲。
安娜有一疊由 $A$ 張卡牌組成的牌堆,布魯諾有一疊由 $B$ 張卡牌組成的牌堆。安娜從她的 $A$ 張卡牌中丟棄任意數量的卡牌(也可以是 $0$ 張)來組成一個新的牌堆。布魯諾從他由 $B$ 張卡牌組成的牌堆的頂部丟棄若干張卡牌(也可以是 $0$ 張),並從底部丟棄若干張卡牌(也可以是 $0$ 張)來組成一個新的牌堆。但是,在丟棄卡牌時,不會改變剩餘卡牌的順序。如果以這種方式得到的 $2$ 個牌堆一致,那麼其中一個牌堆所包含的卡牌張數就成為這 $2$ 名玩家的得分。這裡,稱 $2$ 個牌堆一致,是指兩個牌堆各自包含的卡牌張數 $n$ 相同,並且對於從上往下的第 $i$ 張卡牌($1 \le i \le n$),卡牌上所寫的整數全都相同。
例如,假設安娜有一疊 $5$ 張卡牌的牌堆,從上往下依次寫著整數 $1, 2, 3, 4, 5$;布魯諾有一疊 $4$ 張卡牌的牌堆,從上往下依次寫著整數 $3, 1, 4, 1$。此時,如果安娜丟棄卡牌 $2, 3, 5$,且布魯諾丟棄最上面的卡牌 $3$ 和最下面的卡牌 $1$,那麼這 $2$ 名玩家的牌堆就一致了。此時,由於剩餘的一個牌堆中包含的卡牌張數為 $2$,這 $2$ 名玩家得到 $2$ 分。

我們想要找出這 $2$ 名玩家得分的最大值。
任務
給定安娜和布魯諾所持有的卡牌牌堆的資訊,請編寫一個程式,求出這 $2$ 名玩家得分的最大值。
限制
- $1 \le A \le 5000$:安娜牌堆中的卡牌張數。
- $1 \le B \le 5000$:布魯諾牌堆中的卡牌張數。
- 卡牌上所寫的整數在 $1$ 到 $1000$ 之間(含兩端)。
輸入格式
從標準輸入讀取以下資料。
- 第 $1$ 行寫有以空格分隔的整數 $A, B$。
- 第 $2$ 行寫有以空格分隔的 $A$ 個整數;第 $i$ 個整數($1 \le i \le A$)表示安娜的牌堆中從上往下第 $i$ 張卡牌上所寫的整數。
- 第 $3$ 行寫有以空格分隔的 $B$ 個整數;第 $j$ 個整數($1 \le j \le B$)表示布魯諾的牌堆中從上往下第 $j$ 張卡牌上所寫的整數。
輸出格式
向標準輸出輸出 $1$ 行,表示這 $2$ 名玩家得分的最大值的整數。
子任務
- 在佔總分 $10\%$ 的評測資料中,滿足 $A \le 10, B \le 10$。
- 在佔總分 $50\%$ 的評測資料中,滿足 $A \le 100, B \le 100$。
範例 1
輸入
5 4 1 2 3 4 5 3 1 4 1
輸出
2
該範例對應題目描述中的例子。
範例 2
輸入
6 5 4 1 5 2 3 4 4 5 4 2 3
輸出
3
在該範例中,這 $2$ 名玩家有 $2$ 種方式可以得到 $3$ 分。
- 當安娜丟棄卡牌 $1, 2, 3$,且布魯諾丟棄卡牌 $2, 3$ 時,這 $2$ 名玩家的牌堆從上往下都變成 $4, 5, 4$,這 $2$ 名玩家的得分為 $3$ 分。
- 另外,當安娜丟棄卡牌 $1, 5, 4$,且布魯諾丟棄頂部的卡牌 $4$ 和 $5$ 時,這 $2$ 名玩家的牌堆從上往下都變成 $4, 2, 3$,這 $2$ 名玩家的得分為 $3$ 分。