18352:特定の距離の都市を探す
質問する
コード#コード# from collections import deque
import sys
input = sys.stdin.readline
n,m,k,x = map(int,input().split())
result = [-1]*(n+1)
result[x] = 0 #시작점
path = [[] for _ in range(n+1)]
for _ in range(m):
a,b = map(int,input().split())
path[a].append(b) #간선 연결
queue = deque([x])
while queue:
now = queue.popleft()
for nextcity in path[now]:
if result[nextcity] == False :
result[nextcity] = result[now]+1
queue.append(nextcity)
for i in range(n+1):
if result[i]==k:
print(i)
#없으면
if k not in result:
print(-1)
解説
-1に初期化され、移動するたびに1が増加します.
Reference
この問題について(18352:特定の距離の都市を探す), 我々は、より多くの情報をここで見つけました
https://velog.io/@seochan99/18352-특정-거리의-도시-찾기
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
from collections import deque
import sys
input = sys.stdin.readline
n,m,k,x = map(int,input().split())
result = [-1]*(n+1)
result[x] = 0 #시작점
path = [[] for _ in range(n+1)]
for _ in range(m):
a,b = map(int,input().split())
path[a].append(b) #간선 연결
queue = deque([x])
while queue:
now = queue.popleft()
for nextcity in path[now]:
if result[nextcity] == False :
result[nextcity] = result[now]+1
queue.append(nextcity)
for i in range(n+1):
if result[i]==k:
print(i)
#없으면
if k not in result:
print(-1)
解説
-1に初期化され、移動するたびに1が増加します.
Reference
この問題について(18352:特定の距離の都市を探す), 我々は、より多くの情報をここで見つけました
https://velog.io/@seochan99/18352-특정-거리의-도시-찾기
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
Reference
この問題について(18352:特定の距離の都市を探す), 我々は、より多くの情報をここで見つけました https://velog.io/@seochan99/18352-특정-거리의-도시-찾기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol