結果
| 問題 |
No.1111 コード進行
|
| コンテスト | |
| ユーザー |
c-yan
|
| 提出日時 | 2020-07-10 23:04:43 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 840 ms / 2,000 ms |
| コード長 | 644 bytes |
| コンパイル時間 | 337 ms |
| コンパイル使用メモリ | 81,920 KB |
| 実行使用メモリ | 106,348 KB |
| 最終ジャッジ日時 | 2024-10-11 17:56:51 |
| 合計ジャッジ時間 | 7,574 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 48 |
ソースコード
N, M, K = map(int, input().split())
m = 1000000007
pqc = [[] * 301 for _ in range(301)]
for _ in range(M):
P, Q, C = map(int, input().split())
pqc[P].append((Q, C))
t = [{0: 1} for _ in range(301)]
for i in range(N - 1):
nt = [{} for _ in range(301)]
for j in range(1, 301):
for k in t[j]:
for q, c in pqc[j]:
v = k + c
if v <= K:
nt[q].setdefault(v, 0)
nt[q][v] += t[j][k]
nt[q][v] %= m
t = nt
result = 0
for i in range(1, 301):
t[i].setdefault(K, 0)
result += t[i][K]
result %= m
print(result)
c-yan