CF1776H Beppa and SwerChat

题目描述

Beppa 和她的极客朋友们在即时通讯应用 SwerChat $ ^{\text{TM}} $ 的群聊中保持联系。 该群共有 $ n $ 名成员(不包括 Beppa)。每位成员都有一个唯一的 ID,编号从 $ 1 $ 到 $ n $。当用户打开群聊时,SwerChat $ ^{\text{TM}} $ 会显示其他成员的列表,按照最近一次上线时间从近到远排序(即最近上线的成员排在最前面)。但不会显示具体的上线时间。 今天,Beppa 一整天都很忙:她只在 9:00 和 22:00 各打开了一次群聊。每次,她都记录下了当时成员列表的顺序。现在她想知道:在 9:00 到 22:00 之间,最少有多少其他成员至少上线过一次? Beppa 确定,任何时候都不会有两名成员同时在线,并且在 9:00 和 22:00 时,没有任何成员在线。

输入格式

每组测试数据包含多个测试用例。第一行包含一个整数 $ t $($ 1 \leq t \leq 10\,000 $),表示测试用例的数量。接下来是 $ t $ 组测试用例。 每个测试用例的第一行包含一个整数 $ n $($ 1 \leq n \leq 10^5 $),表示群成员数量(不包括 Beppa)。 第二行包含 $ n $ 个整数 $ a_1, a_2, \dots, a_n $($ 1 \le a_i \le n $),表示 9:00 时成员列表的 ID,按最近上线时间从近到远排序。 第三行包含 $ n $ 个整数 $ b_1, b_2, \dots, b_n $($ 1 \le b_i \le n $),表示 22:00 时成员列表的 ID,按最近上线时间从近到远排序。 对于所有 $ 1 \le i < j \le n $,保证 $ a_i \ne a_j $ 且 $ b_i \ne b_j $。 保证所有测试用例中 $ n $ 的总和不超过 $ 10^5 $。

输出格式

对于每个测试用例,输出一个整数,表示在 9:00 到 22:00 之间,最少有多少成员至少上线过一次。

说明/提示

在第一个测试用例中,成员 $ 4, 5 $ 必须在 9:00 到 22:00 之间上线过。 在第二个测试用例中,可能没有任何成员在 9:00 到 22:00 之间上线过。 由 ChatGPT 4.1 翻译