๋ฌธ์
ํ๋ก๊ทธ๋๋จธ์ค - ๋คํธ์ํฌ
ํ์ด ๊ณผ์
์ฃผ์ด์ง ์ธ์ ํ๋ ฌ์ ๊ธฐ๋ฐ์ผ๋ก ๊ทธ๋ํ ๋ด์ ์ปดํฌ๋ํธ ๊ฐ์๋ฅผ ์ธ๋ ๋ฌธ์ ์
๋๋ค.
๊ฐ ์ ์ ๋ณ๋ก DFS
ํ์์ ํตํด ๋ฐฉ๋ฌธ ๊ฐ๋ฅํ ๋ชจ๋ ์ ์ ์ ๋ฐฉ๋ฌธํด์ฃผ๋ฉด ํด๋น ์ ์ ์ด ์ํ ์ปดํฌ๋ํธ๋ฅผ ๊ตฌํ ์ ์์ต๋๋ค.
๋ฐ๋ผ์ ์ด DFS
ํ์์ด ๋ช๋ฒ ์ํ๋์๋์ง ํ์
ํ๋ค๋ฉด ๋คํธ์ํฌ์ ๊ฐ์๋ฅผ ๊ตฌํ ์ ์์ต๋๋ค.
์ฝ๋
def dfs(n, adj, visit, here):
visit[here] = 1
for there in range(n):
if adj[here][there] and not visit[there]:
dfs(n, adj, visit, there)
def solution(n, computers):
visit = [0 for _ in range(n)]
network = 0
for v in range(n):
if not visit[v]:
dfs(n, computers, visit, v)
network += 1
return network
๋ฐ์ํ
'๐ algorithm > programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค Level 3 - ๋จ์ด ๋ณํ (0) | 2021.03.01 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค Level 2 - ํ๊ฒ ๋๋ฒ (0) | 2021.03.01 |
ํ๋ก๊ทธ๋๋จธ์ค Level 3 - ์ต๊ณ ์ ์งํฉ (0) | 2021.03.01 |
ํ๋ก๊ทธ๋๋จธ์ค Level 2 - ํฐ ์ ๋ง๋ค๊ธฐ (0) | 2021.03.01 |
ํ๋ก๊ทธ๋๋จธ์ค Level 3 - ์ฌ ์ฐ๊ฒฐํ๊ธฐ (0) | 2021.03.01 |
๐ฌ ๋๊ธ