#include using namespace std; using ll = long long; using vec = vector; using mat = vector; using pll = pair; #define INF (1LL << 60) #define MOD 1000000007 #define PI 3.14159265358979323846 #define REP(i,m,n) for(ll (i)=(m),(i_len)=(n);(i)<(i_len);++(i)) #define FORR(i,v) for(auto (i):v) #define ALL(x) (x).begin(), (x).end() #define PR(x) cout << (x) << endl #define PS(x) cout << (x) << " " #define SZ(x) ((ll)(x).size()) #define MAX(a,b) (((a)>(b))?(a):(b)) #define MIN(a,b) (((a)<(b))?(a):(b)) #define REV(x) reverse(ALL((x))) #define ASC(x) sort(ALL((x))) #define DESC(x) ASC((x)); REV((x)) #define pb push_back #define eb emplace_back int main() { ll N; cin >> N; vec A(N), B(N); REP(i,0,N) cin >> A[i]; REP(i,0,N) cin >> B[i]; ll num = 0, den = 0; ASC(A); do { ASC(B); do { ll a = 0, b = 0; REP(i,0,N) { if(A[i] > B[i]) ++a; else if(A[i] < B[i]) ++b; } if(a > b) ++num; ++den; } while(next_permutation(ALL(B))); } while(next_permutation(ALL(A))); cout << setprecision(12) << (double)num / den << endl; return 0; } /* */