結果
問題 | No.301 サイコロで確率問題 (1) |
ユーザー | matsu7874 |
提出日時 | 2015-11-13 23:38:26 |
言語 | Python3 (3.12.2 + numpy 1.26.4 + scipy 1.12.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 556 bytes |
コンパイル時間 | 121 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 24,512 KB |
最終ジャッジ日時 | 2024-09-13 15:36:28 |
合計ジャッジ時間 | 4,551 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ソースコード
T = int(input()) for _ in range(T): N = int(input()) l = 0 r = 10**18 if N>100: print(str(N+1)+'.66666666666666') continue for loop in range(200): m = (l + r) / 2 dp = [0] * (N+1) for i in range(1, N + 1): for j in range(1, 6 + 1): if j > i: dp[i] += m if i > j: dp[i] += dp[i - j] dp[i] = dp[i] / 6 + 1 if dp[N] >= m: l = m else: r = m print((l + r) / 2)