3119 - Badania naukowe

通过次数

0

提交次数

0

时间限制 : 1 秒
内存限制 : 128 MB

给定三个数字串 A, B, C,请找到一个 A, B 的最长公共子序列,满足 C 是该子序列的子串。

输入

第一行,一个整数 n,表示 A 的长度;

第二行,n 个整数,表示数字串 A

第三行,一个整数 m,表示 B 的长度;

第四行,m 个整数,表示数字串 B

第五行,一个整数 k,表示 C 的长度;

第六行,k 个整数,表示数字串 C

输出

一行,一个整数,如果无解,输出 -1;否则,输出满足条件的最长公共子序列的长度。

样例

输入

7
1 2 2 3 1 1 2
6
1 2 1 3 1 2
2
3 2

输出

4

提示

对于 100\% 的数据,1 \leq n,m \leq 3 \times 10^30 \leq k \leq 3 \times 10^3

来源

ONTAK