반응형
문제: https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV7GOPPaAeMDFAXB
T = int(input())
# 여러개의 테스트 케이스가 주어지므로, 각각을 처리합니다.
def dfs(start, depth):
global ans
ans = max(ans, depth)
for next in graph[start]:
if visited[next]:
continue
visited[next] = True
dfs(next, depth + 1)
visited[next] = False
for test_case in range(1, T + 1):
N, M = map(int, input().split())
graph = [[] for _ in range(N+1)]
ans = 0
for i in range(M):
x, y = map(int, input().split())
graph[x].append(y)
graph[y].append(x)
visited = [False] * (N + 1)
# 1~N 번 정점 모두 확인
for i in range(1, N+1):
visited[i] = True
dfs(i, 1)
visited[i] = False
print(f"#{test_case}",ans)
정리
삼성 코테는 #을 반드시 출력해야하므로 print(f"#{test_case}", ans) 아니면 +를 이용하여 출력을 정해진 형식에 맞추어 정답을 제출하는 연습해보았습니다.
반응형
'ProblemSolving > BFS, DFS, 백트래킹' 카테고리의 다른 글
프로그래머스 네트워크 (파이썬) (0) | 2022.05.13 |
---|---|
백준 11720 연결 요소의 개수 (파이썬) (0) | 2022.05.03 |
백준 19238 스타트 택시 (파이썬) (0) | 2022.04.18 |
백준 17142 연구소 3 (Python) (0) | 2022.04.12 |
백준 14501 퇴사 (Python) (0) | 2022.04.07 |