結果
問題 |
No.133 カードゲーム
|
ユーザー |
![]() |
提出日時 | 2015-02-08 19:34:29 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 681 bytes |
コンパイル時間 | 602 ms |
コンパイル使用メモリ | 65,904 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-06-25 03:29:02 |
合計ジャッジ時間 | 1,362 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 19 |
ソースコード
#include <iostream> #include <algorithm> #include <vector> using namespace std; int n; vector<int> a,b; void input(){ cin >> n; for(int i=0;i<n;++i){ int x; cin >> x; a.push_back(x); } for(int i=0;i<n;++i){ int x; cin >> x; b.push_back(x); } } void solve(){ int awin = 0; int battle = 0; do{ sort(b.begin(),b.end()); do{ int acnt = 0,bcnt = 0; for(int i=0;i<n;++i){ if(a[i] > b[i]) ++acnt; } if(acnt>n/2) ++awin; ++battle; }while(next_permutation(b.begin(),b.end())); }while(next_permutation(a.begin(),a.end())); cout << 1.0 * awin / battle << endl; } int main(){ input(); solve(); return 0; }