結果
| 問題 | No.76 回数の期待値で練習 |
| コンテスト | |
| ユーザー |
yoza
|
| 提出日時 | 2014-11-24 00:54:37 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 824 bytes |
| コンパイル時間 | 316 ms |
| コンパイル使用メモリ | 12,032 KB |
| 実行使用メモリ | 49,640 KB |
| 最終ジャッジ日時 | 2025-01-02 21:03:42 |
| 合計ジャッジ時間 | 8,426 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | WA * 2 |
ソースコード
t = int(input())
# for i in range(t):
dp = [0] * (10 ** 6 + 1)
rate = [0] * 6
dp[0] = 1
answer = [1.,
1.0833333333333333,
1.2569444444444444,
1.5353009259259260,
1.6915991512345676,
2.0513639724794235]
for i in range(1, len(dp)):
tmp = 0
for j, k in zip(reversed(dp[max(0, i - 6):i]), rate):
tmp += j * k
if i < 6:
rate[i-1] = answer[i] - tmp - 1
tmp = 0
for j, k in zip(reversed(dp[max(0, i - 6):i]), rate):
tmp += j * k
dp[i] = 1 + tmp
elif i == 6:
rate[i-1] = 1 - sum(rate)
tmp = 0
for j, k in zip(reversed(dp[max(0, i - 6):i]), rate):
tmp += j * k
dp[i] = 1 + tmp
else:
dp[i] = 1 + tmp
# print(tmp, rate, list(reversed(dp[max(0, i - 6):i])))
print(dp[t-1])
yoza