結果
問題 | No.58 イカサマなサイコロ |
ユーザー |
![]() |
提出日時 | 2021-02-08 11:59:44 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 47 ms / 5,000 ms |
コード長 | 591 bytes |
コンパイル時間 | 649 ms |
コンパイル使用メモリ | 82,584 KB |
実行使用メモリ | 65,008 KB |
最終ジャッジ日時 | 2024-07-05 08:16:52 |
合計ジャッジ時間 | 1,330 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 10 |
ソースコード
n=int(input()) k=int(input()) dp=[[0]*(6*n+1) for i in range(n+1)] dp[0][0]=1 for i in range(n): for j in range(6*n): for j2 in range(1,7): if j+j2<=6*n: dp[i+1][j+j2]+=dp[i][j]/6 dp2=[[0]*(6*n+1) for i in range(n+1)] dp2[0][0]=1 for i in range(n): for j in range(6*n): if i<k: for j2 in range(4,7): if j+j2<=6*n: dp2[i+1][j+j2]+=dp2[i][j]/3 else: for j2 in range(1,7): if j+j2<=6*n: dp2[i+1][j+j2]+=dp2[i][j]/6 ans=0 for i in range(6*n+1): for j in range(i+1,6*n+1): ans+=dp[-1][i]*dp2[-1][j] print(ans)