Skip to content

Commit 6dab871

Browse files
author
hangyeol
committed
105차 1번 문제풀이
1 parent 1588178 commit 6dab871

1 file changed

Lines changed: 36 additions & 0 deletions

File tree

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
import sys
2+
from collections import defaultdict, deque
3+
4+
def main():
5+
input = sys.stdin.readline
6+
7+
N, M, K, X = map(int, input().split())
8+
graph = defaultdict(list)
9+
10+
for _ in range(M):
11+
A, B = map(int, input().split())
12+
graph[A].append(B)
13+
14+
distance = [-1] * (N + 1)
15+
distance[X] = 0
16+
17+
queue = deque([X])
18+
19+
while queue:
20+
current = queue.popleft()
21+
22+
for neighbor in graph[current]:
23+
if distance[neighbor] == -1:
24+
distance[neighbor] = distance[current] + 1
25+
queue.append(neighbor)
26+
27+
result = [i for i in range(1, N + 1) if distance[i] == K]
28+
29+
if result:
30+
for city in sorted(result):
31+
print(city)
32+
else:
33+
print(-1)
34+
35+
if __name__ == "__main__":
36+
main()

0 commit comments

Comments
 (0)