#<C>

import math

import itertools

n = int(eval(input()))

p = list(map(int,input().split()))

q = list(map(int,input().split()))

ans1=n

ans2=n

x = [i for i in range(1, n+1)]

for i in itertools.permutations(x,n):

    if p < list(i):

        ans1 -= 1

    if q < list(i):

        ans2 -= 1



print((abs(ans1-ans2)))

    
#<順列全探索>

#n!通りの順列の組み合わせを全探索する方法。

#pythonにはitertoolsが存在するからそれを利用

#<ex.1(ABC150-C)>

import itertools 



n = int(eval(input()))

p = tuple(map(int,input().split()))

q = tuple(map(int,input().split()))

ls = list(itertools.permutations(list(range(1, n + 1)))) #順列作成



print((abs(ls.index(p) - ls.index(q))))

# <C>
import math
import itertools

n = int(eval(input()))
p = list(map(int, input().split()))
q = list(map(int, input().split()))
ans1 = n
ans2 = n
x = [i for i in range(1, n + 1)]
for i in itertools.permutations(x, n):
    if p < list(i):
        ans1 -= 1
    if q < list(i):
        ans2 -= 1
print((abs(ans1 - ans2)))

# <順列全探索>
# n!通りの順列の組み合わせを全探索する方法。
# pythonにはitertoolsが存在するからそれを利用
# <ex.1(ABC150-C)>
import itertools

n = int(eval(input()))
p = tuple(map(int, input().split()))
q = tuple(map(int, input().split()))
ls = list(itertools.permutations(list(range(1, n + 1))))  # 順列作成
print((abs(ls.index(p) - ls.index(q))))

-# <C> -import math +# <順列全探索> +# n!通りの順列の組み合わせを全探索する方法。 +# pythonにはitertoolsが存在するからそれを利用 +# <ex.1(ABC150-C)> -p = list(map(int, input().split())) -q = list(map(int, input().split())) -ans1 = n -ans2 = n -x = [i for i in range(1, n + 1)] -for i in itertools.permutations(x, n): -    if p < list(i): -        ans1 -= 1 -    if q < list(i): -        ans2 -= 1 -print((abs(ans1 - ans2))) +p = tuple(map(int, input().split())) +q = tuple(map(int, input().split())) +ls = list(itertools.permutations(list(range(1, n + 1))))  # 順列作成 +print((abs(ls.index(p) - ls.index(q))))