結果
| 問題 |
No.1682 Unfair Game
|
| コンテスト | |
| ユーザー |
tktk_snsn
|
| 提出日時 | 2021-09-17 22:06:57 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 543 bytes |
| コンパイル時間 | 137 ms |
| コンパイル使用メモリ | 81,876 KB |
| 実行使用メモリ | 108,236 KB |
| 最終ジャッジ日時 | 2024-06-29 20:40:10 |
| 合計ジャッジ時間 | 4,615 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 9 WA * 11 |
ソースコード
from collections import defaultdict
N = int(input())
P = list(map(int, input().split()))
mod = 10 ** 9 + 7
# dp[i, j]: i枚コインを投げて、表の期待値がj -> 何通りか
dp = [defaultdict(int) for _ in range(N + 1)]
dp[0][0] = 1
for i, p in enumerate(P, 1):
for j in range(i)[::-1]:
for k, v in dp[j].items():
dp[j + 1][k + p] += v
dp[j + 1][k + p] %= mod
ans = 0
for i in range(1, N+1):
for k, v in dp[i].items():
if 2 * k > 100 * i:
ans = (ans + v) % mod
print(ans)
tktk_snsn