#include #define rep(i, n) for (int i = 0; i < (n); ++i) #define sz(x) int(x.size()) using namespace std; typedef long long ll; typedef pair P; // const ll INF = 1LL << 60; const int INF = 1e8; const int mod = 1000000007; int N; vector A, B; int main() { cin >> N; A.resize(N); B.resize(N); rep(i, N) cin >> A[i]; rep(i, N) cin >> B[i]; sort(A.begin(), A.end()); sort(B.begin(), B.end()); int games = 0; int game_win_a = 0; do { do { int win_a = 0, win_b = 0, draw = 0;; rep(i, N) { if (A[i] > B[i]) { win_a++; } else if (A[i] < B[i]) { win_b++; } else { draw++; } } if (win_a > win_b) game_win_a++; games++; } while (next_permutation(B.begin(), B.end())); } while (next_permutation(A.begin(), A.end())); double ans = (double)game_win_a / games; printf("%.5f\n", ans); }