結果

問題 No.173 カードゲーム(Medium)
ユーザー 古寺いろは古寺いろは
提出日時 2015-03-26 23:48:22
言語 C++11
(gcc 13.3.0)
結果
TLE  
(最新)
AC  
(最初)
実行時間 -
コード長 1,515 bytes
コンパイル時間 1,343 ms
コンパイル使用メモリ 164,632 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-06-29 01:09:19
合計ジャッジ時間 20,758 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 9 TLE * 1
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

#include "bits/stdc++.h"
using namespace std;
bool usedA[20];
bool usedB[20];
int MAX = 1000;
int main() {
int N;
double PA, PB;
cin >> N >> PA >> PB;
vector<int> A(N), B(N);
for (int i = 0; i < N; i++)
{
cin >> A[i];
}
for (int i = 0; i < N; i++)
{
cin >> B[i];
}
sort(A.begin(), A.end());
sort(B.begin(), B.end());
double count = 0;
int loop = 800000;
for (int t = 0; t < loop; t++)
{
for (int i = 0; i < N; i++)
{
usedA[i] = usedB[i] = false;
}
int score = 0;
for (int i = 0; i < N; i++)
{
int chooseA = 0;
double p = PA;
double p2 = 0;
double nokori = 1;
if (i == N - 1) p = 1;
else p2 = (1 - PA) / (N - 1 - i);
for (int j = 0; j < N; j++)
{
if (usedA[j]) continue;
chooseA = j;
if ((rand() % MAX) / (double)MAX < p / nokori){
break;
}
nokori -= p;
p = p2;
}
int chooseB = 0;
p = PB;
p2 = 0;
nokori = 1;
if (i == N - 1) p = 1;
else p2 = (1 - PB) / (N - 1 - i);
for (int j = 0; j < N; j++)
{
if (usedB[j]) continue;
chooseB = j;
if ((rand() % MAX) / (double)MAX < p / nokori){
break;
}
nokori -= p;
p = p2;
}
//cout << chooseA << " " << chooseB << " " << (rand()%MAX) << endl;
//cin >> score;
if (A[chooseA] > B[chooseB]) score += A[chooseA] + B[chooseB];
if (A[chooseA] < B[chooseB]) score -= A[chooseA] + B[chooseB];
usedA[chooseA] = usedB[chooseB] = true;
}
if (score > 0) count += 1;
}
printf("%.14f", count / loop);
cin >> count;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0