Notice
Recent Posts
Recent Comments
Link
DevKim
[Python] 프로그래머스 LV.03 - 네트워크 본문
728x90
programmers.co.kr/learn/courses/30/lessons/43162
[ 알고리즘 ]
BFS
[문제 접근]
(생략)
[코드]
from collections import deque
def solution(n, computers):
que=deque()
cnt = 0
visited=[0]*(n)
for i in range(n):
computers[i][i]=0
if 1 in computers[i]: # 외톨이가 아니면
continue
else:
visited[i]=1
cnt+=1
for i in range(n):
for j in range(n):
if visited[i]==1:
continue
else:
if computers[i][j]==1:
que.append((i,j))
computers[i][j]=0
visited[i]=1
cnt+=1
while que:
x,y=que.pop()
for k in range(n):
if computers[y][k]==1:
que.append((y,k))
computers[y][k]=0
visited[y]=1
if 1 in visited:
continue
else:
break
return cnt
728x90
'알고리즘 PS' 카테고리의 다른 글
[Python] 프로그래머스 LV.03 - 거스름돈 (0) | 2021.03.13 |
---|---|
[Python] 프로그래머스 LV.03 - 단어 변환 (0) | 2021.03.13 |
[Python] 프로그래머스 LV.03 - 여행경로 (+) test case (0) | 2021.03.13 |
[Python] 프로그래머스 LV.03 - 베스트 앨범 (0) | 2021.03.13 |
[Python] 프로그래머스 LV.03 - 멀리 뛰기 (0) | 2021.03.13 |
Comments