问题描述
输入
输出
第一行一个整数k,表示最长公共合法事件序列的长度。
样例输入
5
1 4 2 5 1
4
1 1 2 4
样例输出
2
数据范围
算法讨论
f[i][j]为a到第i个位置,b到第j个位置最长的公共子串的长度,数据太水三个for过了……其实第三个for是可以优化掉的,在做j的时候记录一下前面最大的长度,然后直接转移就好了,比较懒就不贴优化后的代码了。
#include <cstdio>
using namespace std;
#define maxn 5006