给定三个数字串 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≤n,m≤3×103,0≤k≤3×103。