한걸음

백준 9372 : 상근이의 여행 본문

Coding Test

백준 9372 : 상근이의 여행

우당탕탕 할 수 있다!!! 2024. 2. 7. 16:53
반응형

https://www.acmicpc.net/workbook/view/2063

 

문제집: SW역량테스트 준비 (lcs11244)

 

www.acmicpc.net

1. DFS/BFS 문제의 전형적인 형태?

나는 BFS 로 문제를 풀었다.

평이한 문제. 예전에 풀었던 문제 복습도 한 번 해줌.

https://aeromaster.tistory.com/15

 

[220806] 백준 11724 : 연결 요소의 개수

https://www.acmicpc.net/problem/11724 11724번: 연결 요소의 개수 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와..

aeromaster.tistory.com

2. 전체코드

메모리 : 134324 KB, 시간 : 388 ms, 풀이시간 : 20 min

T = int(input())
result = []
for _ in range(T):
    N, M = map(int, input().split())
    info = [list(map(int, input().split())) for _ in range(M)]
    graph = [[] for _ in range(N + 1)]
    visited = [False for _ in range(N + 1)]
    for x, y in info :
        graph[x].append(y)
        graph[y].append(x)


    def bfs():
        q = [1]
        num = 0
        visited[1] = True
        while q :
            loc = q[0]
            del q[0]
            if visited.count(True) == N : return num
            for x in graph[loc] :
                if not visited[x] :
                    visited[x] = True
                    num += 1
                    q.append(x)
    result.append(bfs())

for number in result :
    print(number)
반응형

'Coding Test' 카테고리의 다른 글

백준 21611 : 마법사 상어와 블리자드  (0) 2024.03.11
백준 23288 : 주사위 굴리기 2  (2) 2024.02.12
백준 13901 : 로봇  (1) 2024.02.06
백준 14925 : 목장 건설하기  (2) 2024.01.26
백준 23291 : 어항 정리  (3) 2023.12.18