結果
| 問題 |
No.58 イカサマなサイコロ
|
| ユーザー |
|
| 提出日時 | 2015-02-13 23:03:51 |
| 言語 | Python2 (2.7.18) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 702 bytes |
| コンパイル時間 | 50 ms |
| コンパイル使用メモリ | 7,040 KB |
| 実行使用メモリ | 6,944 KB |
| 最終ジャッジ日時 | 2024-06-23 19:52:39 |
| 合計ジャッジ時間 | 871 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 6 WA * 4 |
ソースコード
import itertools as it
def denomi(dices):
res = 1
for i in set(dices):
res *= fact[dices.count(i)]
return res
fact = [1]+[reduce(lambda a,b:a*b,range(1,i+1)) for i in range(1,11)]
N = int(raw_input())
K = int(raw_input())
d1 = [0]*61
d2 = [0]*61
for dices in it.combinations_with_replacement(range(1,7),N):
d1[sum(dices)] += fact[N]/denomi(dices)
for dices1 in it.combinations_with_replacement(range(1,7),N-K):
for dices2 in it.combinations_with_replacement([4,5,6],K):
d2[sum(dices1)+sum(dices2)] += fact[N-K]/denomi(dices1) + fact[K]/denomi(dices2)
sum1 = sum(d1)
sum2 = sum(d2)
ans = 0.0
for i in range(61):
ans += 1.0*d2[i]/sum2*sum(d1[:i])/sum1
print ans