結果
問題 | No.133 カードゲーム |
ユーザー |
![]() |
提出日時 | 2020-10-27 01:39:00 |
言語 | C++17(clang) (17.0.6 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 1,448 bytes |
コンパイル時間 | 4,560 ms |
コンパイル使用メモリ | 166,360 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-21 21:48:53 |
合計ジャッジ時間 | 5,303 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 19 |
ソースコード
#include <bits/stdc++.h>using namespace std;#define int long long#define rep(i,n) for(int i=0; i<(int)n; i++)#define rep1(i,n) for(int i=1; i<(int)n; i++)#define repa(i,a,n) for(int i=(a); i<(int)(n); i++)#define all(vec) vec.begin(),vec.end()#define COUT(x) cout<<(x)<<endl#define YES(x) cout<<(x?"YES":"NO")<<endl#define Yes(x) cout<<(x?"Yes":"No")<<endlusing vi = vector<int>;using vs = vector<string>;using vvi = vector<vi>;using pii = pair<int, int>;using psi = pair<string, int>;const int dx[4] = {1, 0,-1, 0};const int dy[4] = {0, 1, 0,-1};const int mod = 1e9+7;int gcd(int a, int b){if(a%b == 0){return(b);}else{return(gcd(b, a%b));}}int lcm(int a, int b){return a/gcd(a, b)*b;}//cout << fixed << setprecision(15);int N, M, K, H, W, L, R, X, Y;string S, T;int INF = 1e18;signed main(){cin >> N;vi A(N); rep(i,N) cin >> A[i];vi B(N); rep(i,N) cin >> B[i];sort(all(A));int aw = 0;int bw = 0;int drow = 0;do{sort(all(B));do{int ca = 0;int cb = 0;rep(i,N){if(A[i]>B[i]) ca++;else if(A[i]<B[i]) cb++;}if (ca>cb)aw++;else if(ca==cb) drow++;else bw++;}while(next_permutation(all(B)));}while(next_permutation(all(A)));cout << fixed << setprecision(4);bw += aw+drow;COUT((double)aw/(double)bw);return 0;}