반응형
일단 이 문제는 bfs로 풀었는데 백준에 python3으로 코드를 제출하면 시간초과가 뜬다.😂
그래서 서치해본 결과 대부분 pypy3으로 제출하는 걸 알 수 있었다.
그래도 python3으로 통과가 되는 코드는 없을까? 백준 정답자중에 찾아봤는데 딱 2개를 찾을 수 있었다.
하지만 코드가 너무 길고 정말 복잡하게 푼 코드였다 ㅜㅜ
그래서 pypy3으로 해결한 것이 찝찝하지만 그래도 다른 방법을 찾을 수 없기에 어쩔 수 없다.
from collections import deque
import sys
input = sys.stdin.readline
def bfs(node):
queue = deque()
queue.append(node)
check[node] = 1
while queue:
node = queue.popleft()
for i in graph[node]:
if check[i] == 0:
check[i] = 1
queue.append(i)
N,M = map(int,input().split())
graph = [[] for _ in range(N+1)]
for _ in range(M):
u,v = map(int,input().split())
graph[v].append(u)
res = []
for i in range(1,N+1):
check = [0] * (N+1)
bfs(i)
res.append(check.count(1))
m = max(res)
for i in range(N):
if res[i] == m:
print(i + 1,end = ' ')
print()
반응형
'알고리즘 > dfs,bfs' 카테고리의 다른 글
[파이썬🐍] 백준 11725 : 트리의 부모 찾기 (0) | 2021.06.22 |
---|---|
[파이썬🐍] 백준 7562 : 나이트의 이동 (0) | 2021.05.31 |
[파이썬🐍] 백준 1012 : 유기농 배추 (0) | 2021.05.30 |
[파이썬🐍] 백준 7576 : 토마토 (0) | 2021.05.29 |
[파이썬🐍] 백준 4963 : 섬의 개수 (0) | 2021.04.12 |
댓글