编程题
### 问题描述
某小区正在进行一次灾难疏散演练。小区里共有 $2n$ 名居民,其中有 $n$ 名从 $1$ 到 $n$ 编号的常住居民,和 $n$ 流动居民,流动居民尚未来得及编号,因此暂时认为他们的编号均为 $0$ 。
首先居民们自发地排成了 $A,B$ 两队,每队 $n$ 人。小区管理人希望能让他们的队伍更为规则一些,因此他准备进行零次或若干次排队操作,使得 $A$ 队全为流动居民, $B$ 队全为常住居民,并且常住居民按照编号递增(即 $1,2,3,\dots,n$ )的顺序从前向后依次排号。管理人的每次排队操作如下:
管理人从 $A$ 队中选择任意位置的一名居民,让他从 $A$ 队中出列,并让他站到 $B$ 队队尾。同时 $B$ 队队首的居民出列,填补到 $A$ 队中出列居民的位置上。
管理人想请你帮他求出,他最少需要经过多少次排队操作,才能使两队排成他想要的状态。
### 输入格式
第一行输入一个整数 $n$ ,表示每队的居民人数。
第二行包含 $n$ 个整数 $A_1,A_2,\dots,A_n$ ,整数之间以空格分开,表示 $A$ 队的居民编号。
第三行包含 $n$ 个整数 $B_1,B_2,\dots,B_n$ ,整数之间以空格分开,表示 $B$ 队的居民编号。
### 输出格式
输出一个整数,表示管理人最少需要的排队操作次数。
### 样例输入
```
4
0 1 0 4
3 0 0 2
```
### 样例输出
```
7
```
### 评测数据规模
对于所有评测数据, $1\leq{n}\leq{10^5 },0\leq{A_i,B_i}\leq{n}$ 。