結果
| 問題 | No.1111 コード進行 |
| コンテスト | |
| ユーザー |
titia
|
| 提出日時 | 2020-07-11 00:56:38 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
AC
|
| 実行時間 | 1,893 ms / 2,000 ms |
| コード長 | 669 bytes |
| 記録 | |
| コンパイル時間 | 165 ms |
| コンパイル使用メモリ | 85,248 KB |
| 実行使用メモリ | 160,128 KB |
| 最終ジャッジ日時 | 2026-04-28 07:31:12 |
| 合計ジャッジ時間 | 11,609 ms |
|
ジャッジサーバーID (参考情報) |
judge2_1 / judge1_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 48 |
ソースコード
import sys
input = sys.stdin.readline
mod=10**9+7
N,M,K=map(int,input().split())
E=[[] for i in range(301)]
for i in range(M):
p,q,c=map(int,input().split())
E[p].append((q,c))
DP=dict()
for i in range(1,301):
DP[(i,0)]=1
for i in range(N-1):
NDP=dict()
for i,now in DP:
for to,cost in E[i]:
if now+cost<=K:
if (to,now+cost) in NDP:
NDP[to,now+cost]+=DP[i,now]
NDP[to,now+cost]%=mod
else:
NDP[to,now+cost]=DP[i,now]
DP=NDP
ANS=0
for i,c in DP:
if c==K:
ANS=(ANS+DP[i,c])%mod
print(ANS)
titia