#include #include #include using namespace std; size_t factorial(size_t a) { size_t tmp = 1; for (size_t i = 2; i <= a; ++i) tmp *= i; return tmp; } int main() { double sum = 0; size_t N, tmp; cin >> N; vector A(N), B(N); for (size_t i = 0; i < N; ++i) cin >> A[i]; for (size_t i = 0; i < N; ++i) cin >> B[i]; sort(A.begin(), A.end()); do { sort(B.begin(), B.end()); do { tmp = 0; for (size_t i = 0; i < N; ++i) { if (A[i] > B[i]) ++tmp; } if (tmp > N / 2) ++sum; } while (next_permutation(B.begin(), B.end())); } while (next_permutation(A.begin(), A.end())); tmp = factorial(N); cout << sum / tmp / tmp; }