結果
問題 | No.2565 はじめてのおつかい |
ユーザー |
|
提出日時 | 2023-12-02 16:28:37 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 842 bytes |
コンパイル時間 | 226 ms |
コンパイル使用メモリ | 81,920 KB |
実行使用メモリ | 93,760 KB |
最終ジャッジ日時 | 2024-09-26 20:20:42 |
合計ジャッジ時間 | 8,684 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 WA * 2 |
other | AC * 31 WA * 19 |
ソースコード
from collections import defaultdict,deque n,m = map(int,input().split()) d = defaultdict(list) for _ in range(m): a,b = map(int,input().split()) d[a].append(b) from1 = [float("INF")]*(n+1) fromnminus1 = [float("INF")]*(n+1) fromn = [float("INF")]*(n+1) def bfs(start,result): global d visited = [False]*(n+1) q = deque() visited[start] = True cnt = 0 q.append((start,cnt)) while q: nowv,nowcnt = q.popleft() result[nowv] = nowcnt for nextv in d[nowv]: if visited[nextv] == False: visited[nextv] = True q.append((nextv,nowcnt+1)) return result route1 = from1[n-1] + fromnminus1[n] + fromn[1] route2 = from1[n] + fromn[n-1] + fromnminus1[1] result = min(route1,route2) if result == float("inf"): print(-1) else: print(result)