結果
問題 |
No.1340 おーじ君をさがせ
|
ユーザー |
![]() |
提出日時 | 2020-09-26 18:01:55 |
言語 | PyPy3 (7.3.15) |
結果 |
RE
|
実行時間 | - |
コード長 | 609 bytes |
コンパイル時間 | 257 ms |
コンパイル使用メモリ | 81,920 KB |
実行使用メモリ | 78,208 KB |
最終ジャッジ日時 | 2024-11-26 19:26:07 |
合計ジャッジ時間 | 7,013 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 39 RE * 20 |
ソースコード
# 落としましょうか。 # 周期じゃないところで 2 回到達するとダメな嘘解法 N, M, T, *nums = map(int, open(0).read().split()) G = tuple(set(zip(nums[::2], nums[1::2]))) T_max = min(10000, T) T0 = [-1] * N T1 = [-1] * N dp = [0] * N dp[0] = 1 for t in range(T_max): newdp = [0] * N for frm, to in G: if dp[frm] and not newdp[to]: newdp[to] = 1 T0[to], T1[to] = T1[to], t dp = newdp ans = 0 for v in range(N): if T == T_max: ans += dp[v] else: t0, t1 = T0[v], T1[v] ans += (T-t1) % (t1-t0) == 0 print(ans)