結果
問題 | No.133 カードゲーム |
ユーザー |
|
提出日時 | 2020-04-10 00:51:25 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 741 bytes |
コンパイル時間 | 1,793 ms |
コンパイル使用メモリ | 174,356 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-14 03:44:40 |
合計ジャッジ時間 | 2,692 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 19 |
ソースコード
#include <bits/stdc++.h>using namespace std;#define rep(i, n) for (int i = 0; i < (int)(n); i++)#define llong long longint main() {int n;cin >> n;vector<int> a(n), b(n), idx(n);rep(i, n) cin >> a[i];rep(i, n) cin >> b[i];rep(i, n) idx[i] = i;vector<vector<int>> perm;int wins = 0;int total = 0;do {perm.push_back(idx);} while(next_permutation(idx.begin(), idx.end()));for(vector<int> a1: perm) {for(vector<int> b1: perm) {int win = 0;rep(i, n) {if(a[a1[i]] > b[b1[i]]) win++;}if(win*2 > n) wins++;total++;}}printf("%5f\n", (double)wins / (double)total);}