#818. 【提高】最长公共子序列(LCS)(2)

【提高】最长公共子序列(LCS)(2)

说明

给出1-nn的两个排列P1P_1P2P_2,求它们的最长公共子序列。

和最长公共子序列(LCS)(1)(本OJ817题)问题不同的是,本题的nn在5-100000之间。

输入格式

第一行是一个数nn;(nn是5-100000之间的整数)

接下来两行,每行为nn个数,为自然数1-nn的一个排列(1-nn的排列每行的数据都是1-nn之间的数,但顺序可能不同,比如1-5的排列可以是:1 2 3 4 5,也可以是2 5 4 3 1)。

输出格式

一个整数,即最长公共子序列的长度。

样例

5 
3 2 1 4 5
1 2 3 4 5
3

提示

  • 对于50%的数据,5n10005 \le n \le 1000
  • 对于100%的数据,5n1000005 \le n \le 100000