[백준1197] / 최소 스패닝 트리 - MST

2024. 11. 8. 13:35·Programming/Algorithm

 

분명... 알고리즘 수업 때 배웠던.. MST

오래되니 잊어버려서 다시 도전!한 문제~

 

백준1197

 

 

푼 날짜 : 2024.11.08

푼 문제 : [1197] / 최소 스패닝 트리

사용한 언어 : python

알고리즘 : MST(Prim)

 

 

접근 방식 :

Kruskal 이랑 Prim 둘 중 Prim 방식으로 풀었다. 현재 기준으로 가장 비용이 낮은 것으로 이어나가는 방식이다.

(이건 추후 다시 한 번 개념 정리해서 올려야겠다.)

 

heapq를 사용하기 때문에 가장 작은 비용을 꺼내는 것은 쉽다!

방문하지 않은 정점을 찾아나가며 비용이 가장 작은 길을 선택한다.

 

 

 

코드 :

import sys
import heapq

V, E  = map(int, sys.stdin.readline().split())

graph = [[] for _ in range(V+1)]
visited = [0 for _ in range(V+1)]

for _ in range(E):
    a, b, c = map(int, sys.stdin.readline().split())
    # heapq를 사용하므로 비용을 먼저 넣어주기
    graph[a].append((c, b)) 
    graph[b].append((c, a))


heap = [(0, 1)]
min_cost = 0

while heap:
    n_cost, n_edge = heapq.heappop(heap)

    if not visited[n_edge]:
        min_cost += n_cost
        visited[n_edge] = 1

        for c, e in graph[n_edge]:
            if not visited[e]:
                heapq.heappush(heap, (c, e))

print(min_cost)

 

 

조금씩 풀 수 있는 알고리즘 문제가 는다는 것... 아주 기분 좋은 일!!

성장이 느껴진다 느껴져 ~~~~

 

 

 

 

'Programming > Algorithm' 카테고리의 다른 글

[백준11779] / 최소비용 구하기 2 - 다익스트라  (1) 2024.11.11
[백준1504] / 특정한 최단 경로 - 다익스트라  (1) 2024.11.11
[프로그래머스] / 영어 끝말잇기  (1) 2024.11.07
[백준1189] / 컴백홈 - DFS, 백트래킹  (1) 2024.10.31
[백준2210] / 숫자판 점프 - DFS (백트래킹을 곁들인...)  (1) 2024.10.30
'Programming/Algorithm' 카테고리의 다른 글
  • [백준11779] / 최소비용 구하기 2 - 다익스트라
  • [백준1504] / 특정한 최단 경로 - 다익스트라
  • [프로그래머스] / 영어 끝말잇기
  • [백준1189] / 컴백홈 - DFS, 백트래킹
__narrrrrmm
__narrrrrmm
__narrrrrmm
낢
__narrrrrmm
글쓰기 관리
전체
오늘
어제
  • 분류 전체보기 (71)
    • Programming (68)
      • Algorithm (61)
      • React JS (2)
      • SQL (5)
    • 낢의 하루 (1)
    • 대외활동 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

DP
알고리즘
백준
다이나믹프로그래밍
Javascript
그래프
백트래킹
React.js
파싱
다익스트라
투포인터
SQL
heic
Python
mysql
최소스패닝트리
MST
그래프탐색
Dijkstra
삼성 금융아카데미
컬럼별칭
StarRating
PCCP
DFS
BFS
백트레킹
웹동아리
프로그래머스
파이썬
누적합
hELLO· Designed By정상우.v4.5.3
__narrrrrmm
[백준1197] / 최소 스패닝 트리 - MST
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.