#include using namespace std; int main() { int n; cin >> n; vectorA(n); vectorB(n); vectorindexs(n); vector>permulation_memo; for (int i = 0; i < n; i++) { cin >> A.at(i); indexs.at(i) = i; } for (int i = 0; i < n; i++) cin >> B.at(i); int A_win_total = 0; int total = 0; do { permulation_memo.push_back(indexs); } while (next_permutation(indexs.begin(), indexs.end())); for (vectorindexsA : permulation_memo) { for (vectorindexsB : permulation_memo) { total++; int A_win = 0; int B_win = 0; for (int i = 0; i < n; i++) { if (A.at(indexsA.at(i)) < B.at(indexsB.at(i))) B_win++; else A_win++; } if (A_win > B_win) A_win_total++; } } cout << (double)A_win_total / (double)total << endl; }