#5【BZOJ4275】[ONTAK2015]Badania

Description

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

Input

第一行包含一个正整数n(1<=n<=3000),表示A串的长度。
第二行包含n个正整数,其中第i个数表示A[i](1<=A[i]<=1000)。
第三行包含一个正整数m(1<=m<=3000),表示B串的长度。
第四行包含m个正整数,其中第i个数表示B[i](1<=B[i]<=1000)。
第五行包含一个整数k(0<=k<=3000),表示C串的长度。
第六行包含k个正整数,其中第i个数表示C[i](1<=C[i]<=1000)。
题解:
水题吧。。
首先对于ab串分别搞出枚举i,确定j使得i-j中有c这个子序列
预处理出前缀公共子序列 后缀公共子序列
然后ab串分别枚举i1,i2
在算一下就好了
 
 
posted @ 2018-04-21 07:54  尹吴潇  阅读(135)  评论(0编辑  收藏  举报