from Queue import * # Queue, LifoQueue, PriorityQueue from bisect import * #bisect, insort from collections import * #deque, Counter,OrderedDict,defaultdict #set([]) import math import copy import itertools import string import sys myread = lambda : map(int,raw_input().split()) def solver(): N = int(raw_input()) A = myread() B = myread() cnt = 0 all_cnt = 0 for a in itertools.permutations(A): for b in itertools.permutations(B): all_cnt += 1 win = 0 for i in xrange(N): win += a[i] > b[i] if win > (N/2): cnt += 1 print "%.10f" % (float(cnt)/all_cnt) if __name__ == "__main__": solver()