-코드
def dfs(start):
visited[start] = True
result.append(start)
for i in range(1, n + 1):
if not visited[i] and arr[start][i]:
dfs(i)
return result
n = int(input())
m = int(input())
arr = [[0] * (n + 1) for _ in range(n + 1)]
visited = [False] * (n + 1)
result = []
for _ in range(m):
u, v = map(int, input().split())
arr[u][v] = 1
arr[v][u] = 1
print(len(dfs(1)) - 1)
어제 dfs 문제 푼 것을 익숙해지기 위해서 토대로 만들어봤습니다.
'Beakjoon&프로그래머스 > 파이썬' 카테고리의 다른 글
[백준/파이썬] 16173번 점프왕 쩰리 (Small) (0) | 2021.12.31 |
---|---|
[백준/파이썬] 23802번 골뱅이 찍기 - 뒤집힌 ㄱ (0) | 2021.12.31 |
[백준/파이썬] 23812번 골뱅이 찍기 - 돌아간 ㅍ (0) | 2021.12.30 |
[백준/파이썬] 1260번 DFS와 BFS (0) | 2021.12.29 |
[백준/파이썬] 23811번 골뱅이 찍기 - ㅌ (0) | 2021.12.29 |