[다시 풀어보는 문제]
import collections
def DFS(graph, v, visited):
visited[v] = True
print(v, end=" ")
for i in graph[v]:
if not visited[i]:
DFS(graph,i,visited)
def BFS(graph, v, visited):
q = collections.deque([v])
visited = [False] * (n+1)
visited[v] = True
while q:
now = q.popleft()
print(now, end=" ")
for i in graph[now]:
if not visited[i]:
q.append(i)
visited[i] = True
if __name__=="__main__":
n,m,v = map(int,input().split())
graph= [[] for _ in range(n+1)]
visited = [False] * (n+1)
for _ in range(m):
a, b = map(int,input().split())
graph[a].append(b)
graph[b].append(a)
graph[a].sort()
graph[b].sort()
DFS(graph,v,visited)
print()
BFS(graph,v, visited)
[메모]
- 메인함수가 실행하고자 하는 함수보다 앞에 있으면 함수가 없다는 에러가 난다.
'문제풀이 > 백준(Boj) 문제풀이' 카테고리의 다른 글
[백준][그래프] - 2667. 단지번호붙이기 (0) | 2022.05.02 |
---|---|
[백준][그래프] - 2606. 바이러스 (0) | 2022.04.29 |
[백준][수학/사칙연산] 2525. 오븐 시계 (0) | 2022.03.01 |
[백준][수학/사칙연산] 18108. 1998년생인 내가 태국에서는 2541년생?! (0) | 2022.03.01 |
[백준][구현] 10926. ??!(파이썬/python) (0) | 2022.03.01 |