코딩 테스트/Baekjoon

S2 11724. 연결 요소의 개수

  • -
728x90
반응형

문제 보기 :  11724번: 연결 요소의 개수


문제

  • 정답률 : 42%


작성 코드

import sys
input = sys.stdin.readline
sys.setrecursionlimit(10000)

def connect(start):
    stack = [start]
    visited[start]=True
    while stack:
        node = stack.pop()
        for no in graph[node]:
            if not visited[no]:
                visited[no] = True
                stack.append(no)

n,m = map(int,input().split())
graph = {i:[] for i in range(1,n+1)}

for _ in range(m):
    a,b = map(int,input().split())
    graph[a].append(b)
    graph[b].append(a)

visited = [False]*(n+1)
answer = 0
for i in range(1,n+1):
    if not visited[i]:
        answer += 1
        connect(i)
        
print(answer)

풀이

dfs 문제라 간단한 문제였는데 (세상에 이제 dfs가 간단하다고 말하는 날이 오다니...!)

시간초과 때문에 다소 난항을 겪은 문제였다....

import sys를 사용해야한다는 건 알고 있었지만 형태를 어떻게 입력해야할지 감이 안왔다. 그래서 여러번 시도했고 시도 끝에
input = sys.stdin.readline 이렇게 입력하면 된다는 결론을 얻었다.

320x100
728x90

'코딩 테스트 > Baekjoon' 카테고리의 다른 글

S3 9461. 파도반 수열  (0) 2024.11.04
S2 1912. 연속합  (0) 2024.11.04
S3 15650. N과 M (2)  (0) 2024.11.02
S2 1874. 스택 수열  (0) 2024.10.30
S3 15649. N과 M (1)  (0) 2024.10.30
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.