結果
| 問題 |
No.133 カードゲーム
|
| コンテスト | |
| ユーザー |
matsu7874
|
| 提出日時 | 2015-03-27 00:33:29 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 30 ms / 5,000 ms |
| コード長 | 716 bytes |
| コンパイル時間 | 78 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 10,880 KB |
| 最終ジャッジ日時 | 2024-06-25 03:29:17 |
| 合計ジャッジ時間 | 1,516 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 19 |
ソースコード
N = int(input())
A = [int(x) for x in input().split()]
B = [int(x) for x in input().split()]
def calc(Sa,Sb,Ha,Hb,P):
if len(Ha)<=1:
if Ha[0]>Hb[0]:
Sa += 1
else:
Sb += 1
if Sa>Sb:
return P
else:
return 0
else:
PP = 0.0
for ha in Ha:
for hb in Hb:
sa = sb = 0
if ha>hb:
sa = 1
else:
sb = 1
pa = 1/len(Ha)
pb = 1/len(Hb)
PP += calc(Sa+sa,Sb+sb,[x for x in Ha if x != ha],[x for x in Hb if x != hb],P*pa*pb)
return PP
P_A_win = calc(0,0,A,B,1)
print(P_A_win)
matsu7874