結果
問題 |
No.133 カードゲーム
|
ユーザー |
![]() |
提出日時 | 2020-02-12 20:38:43 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 5,000 ms |
コード長 | 955 bytes |
コンパイル時間 | 4,547 ms |
コンパイル使用メモリ | 233,360 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-04 03:42:40 |
合計ジャッジ時間 | 4,981 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 19 |
ソースコード
#define _GLIBCXX_DEBUG #include <bits/stdc++.h> using namespace std; #define rep(i, n) for (int i = 0; i < (int)(n); i++) #define all(v) v.begin(), v.end() typedef pair<int, int> P; const int INF = 1001001001; const vector<int> di = {-1, 0, 1, 0}; const vector<int> dj = {0, -1, 0, 1}; int n; vector<int> card_a; vector<int> card_b; int main() { cin >> n; card_a.resize(n); card_b.resize(n); rep(i, n) { cin >> card_a[i]; } rep(i, n) { cin >> card_b[i]; } sort(all(card_a)); sort(all(card_b)); double cnt = 0; double total = 0; do { do { total++; int vic_a = 0; int vic_b = 0; rep(i, n) { if (card_a[i] > card_b[i]) { vic_a++; } else if (card_a[i] < card_b[i]) { vic_b++; } } if (vic_a > vic_b) { cnt++; } } while (next_permutation(all(card_b))); } while (next_permutation(all(card_a))); printf("%f\n", cnt / total); }