#P1670. 火车站(station)

火车站(station)

题目描述

Silvia 目前在广州南站,她注意到车站有很多站台,但是有一些站台闲置了,所以她打算统计有多少真正需要的站台。

Silvia 得到了广州南站的火车时刻表,在上面记录了火车的进站顺序和出站顺序,她发现广州南站的时刻表每两天更新一次,在这个周期内,第一天会有 nn 列火车到站,第二天这 nn 列火车都会离站,即不会有火车在所有火车都到站之前离开。

广州南站的车站站台足够长,可以满足 nn 列火车都停进同一个站台,但如果火车 xx 先进入站台,然后 yy 进入同一站台,那么火车 xx 不可以在火车 yy 离开站台之前离开。

Silvia 想知道在满足火车时刻表上的进站和出站顺序的情况下,最少需要多少个站台才能让所有的火车都停到站内。

输入格式

第一行一个整数 nn,表示火车的数量。

第二行包含 nn 个整数 aia_i,表示第 ii 列火车在第一天第 aia_i 个到达车站。序列 (ai)(a_i) 是一个排列。

第三行包含 nn 个整数 bib_i,表示第 ii 列火车在第二天第 bib_i 个离开车站。序列 (bi)(b_i) 是一个排列。

输出格式

输出一行一个整数,表示最少需要多少个站台。

输入输出样例 #1

输入 #1

5
3 5 2 4 1
3 2 5 1 4

输出 #1

2

输入输出样例 #2

输入 #2

5
3 1 2 5 4
4 2 3 1 5

输出 #2

4

我们可以让 2244 停在一个站台,其他剩下的三列火车各停一个站台,这是最少的数量。

输入输出样例 #3

输入 #3

3
3 2 1
1 2 3

输出 #3

1

所有火车均可在同一站台排成一列

数据范围

对于 100%100\% 的数据,有:

  • 1n21051\le n \le 2 \cdot 10^5
  • 1ain,ij,aiaj1 \le a_i \le n, 且 \forall i \neq j,a_i \neq a_j
  • 1bin,ij,bibj1\le b_i\le n,且 \forall i\neq j,b_i\neq b_j

子任务

子任务 附加限制 分值
11 n10n\le 10 2121
22 最小所需站台数要么是 11,要么是 22 1818
33 n1 000n\le 1\ 000 3131
44 无附加限制 3030

时限:1s

空间:512MB