#LQ1521. 魔法巡游

魔法巡游

问题描述

在蓝桥王国中,两位魔法使者,小蓝与小桥,肩负着维护时空秩序的使命。他们每人分别持有 NN 个符文石,这些石头被赋予了强大的力量,每一块上都刻有一个介于 1110910^9 之间的数字符号。小蓝的符文石集合标记为 s1,s2,,sNs_1,s_2,…,s_N​,小桥的则为 t1,t2,,tNt_1,t_2,…,t_N

两位魔法使者的任务是通过使用符文石,在各个时空节点间巡游。每次巡游遵循这样一条法则:当小蓝使用了符文石 sis_i​ 到达新的节点后,小桥必须选用一个序号更大的符文石(即某个 tjt_j​ 满足 j>ij>i)前往下一个节点。同理,小桥抵达之后,小蓝需要选择一个序号 j>ij>i 的符文石 sjs_j​ 继续他们的巡游。

为了成功地穿梭时空,两个连续使用的符文石上的数字符号必须有共鸣,这种共鸣只有当数字符号中至少包含一个特定的元素——星火(数字 00)、水波(数字 22)或者风语(数字 44)时,才会发生。例如,符号序列 126,552,24,4126,552,24,4 中的每对连续符文都包含了至少一个共鸣元素,则它们是一系列成功的巡游;而如果是 15,51,515,51,5,则不成立,因为它们之间的共鸣元素不包含星火、水波或风语中的任意一个。

小蓝总是先启程,使用他的符文石开启巡游。

你的任务是计算这对魔法使者能够执行的最长时空巡游序列的长度。这样的序列形式为 si1,ti2,si3,ti4,s_{i_1},t_{i_2},s_{i_3},t_{i_4},…,其中序列索引满足 i1<i2<i3<i4<i_1<i_2<i_3<i_4<…,并且序列中每一对相邻的符文石都至少包含一个共鸣元素。

输入格式

第一行包含一个整数 NN,表示每位魔法使者持有的符文石数量。

第二行包含 NN 个由空格分隔的整数,表示小蓝的符文石上刻有的数字符号 s1,s2,,sNs_1,s_2,…,s_N

第三行包含 NN 个由空格分隔的整数,表示小桥的符文石上刻有的数字符号 t1,t2,,tNt_1,t_2,…,t_N

输出格式

输出一个整数,代表小蓝和小桥在遵守所有规则的情况下,最多能进行多少次时空巡游。

5
126 393 581 42 44
204 990 240 46 52
4

样例说明

小蓝和小桥可以选择以下符文石序列进行巡游:

s1(126)t3(240)s4(42)t5(52)s_1(126)→t_3(240)→s_4(42)→t_5(52)

这里,数字 22 作为共鸣元素连接了 s1s_1​ 和 t3t_3​、s4s_4​ 和 t5t_5​,数字 2244 作为共鸣元素连接了 t3t_3​ 和 s4s_4​。

评测用例规模与约定

对于 30%30\% 的评测用例,1N1031≤N≤10^31si,ti1051≤s_i,t_i≤10^5

对于所有评测用例,1N1051≤N≤10^51si,ti1091≤s_i,t_i≤10^9