#include using namespace std; #define rep(i, n) for (int i = 0; i < (int)(n); i++) typedef long long ll; typedef pair P; const ll mod = 1000000007; //出力は (ans % mod + mod) % mod (負の剰余を正にする) const int inf = 1e9; const long long INF = 1LL << 60; // INF = 1152921504606846976 int dx[4] = {-1,0,0,1}; int dy[4] = {0,-1,1,0}; int main() { int n; cin >> n; vector a(n); vector b(n); rep(i,n) cin >> a[i]; rep(i,n) cin >> b[i]; sort(a.begin(),a.end()); sort(b.begin(),b.end()); int cnt = 0; int win = 0; do{ int big = 0; cnt++; rep(i,n){ if(a[i] > b[i]) big++; } if(big > n/2) win++; }while(next_permutation(a.begin(),a.end())); double ans = (double)win/(double)(cnt); cout << ans << endl; }