#P1316. 子序列长度和

子序列长度和

题目描述

薯条哥有两个长度为nn的数组,现在她想从这两个数组中分别选出一个非空子序列,使得从第一个数组中选出的子序列的最大值不大于从第二个数组中选出的子序列的最小值。

薯条哥想知道两个子序列的长度之和最大是多少。

如果数组aa可以通过删除数组 b 中的若干(可能为零或全部)元素得到,则数组aa是数组bb的子序列。

输入描述

第一行输入一个整数n(ln105)n(l\le n\le 10^5)代表数组的长度。

第二行输入几个整数a1,a2,...,an(1ai109)a_1,a_2,...,a_n(1\le a_i\le 10^9)代表第一个数组。

第三行输入几个整数b1,b2,,bn(1bi109)b_1,b_2,…,b_n(1\le b_i\le 10^9)代表第二个数组。

输出描述

在一行上输出一个整数,表示两个子序列的长度之和最大是多少。如果无法选出满足条件的子序列,则输出-1。

样例

输入

4
1 2 3 4
3 4 5 6

输出

7