만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

몇 개를 지워야 행복할까

면접 대비

시간 제한0.5초메모리 제한512 MB

요약
각 간선이 어떤 최소 신장 트리에 속하도록 만들기 위해 지워야 할 간선 수의 최솟값을 구해 모두 더한다.
난이도

보통10점 중 7점

유형
최소 신장 트리, 그래프, 유니온 파인드, 그리디
정답자
아직 제출이 없습니다

문제

가중치가 붙은 연결 단순 무향 그래프 GG가 있다. 잘 알려진 최소 신장 트리(MST) 문제를 떠올려 보자. 여기서는 각 간선 ee에 대해, ee가 GG의 MST에 들어가게 하려면 GG를 얼마나 고쳐야 하는지를 묻는다. ee를 포함하는 MST가 GG에 이미 있다면 ee는 GG에서 행복하다고 하고, H(e)=0H(e) = 0으로 정의한다. ee를 포함하는 MST가 하나도 없다면 ee는 GG에서 불행하다고 한다. 이때 GG에서 간선을 몇 개 지워 연결 그래프 G′G'을 만들고, 그 안에서 ee가 행복해지게 할 수 있다. H(e)H(e)는 이렇게 ee가 행복해지는 G′G'을 얻으려고 GG에서 지우는 간선의 최소 개수다.

그림 E.1. 정점이 3개인 완전 그래프.

그림 E.1의 그래프는 정점이 3개, 간선이 3개다. 이 그래프의 MST는 가중치가 1과 2인 간선 두 개로 이루어지므로 그 두 간선은 행복하다. 가중치가 3인 간선을 행복하게 만들려면 행복한 두 간선 중 아무거나 하나만 지우면 된다.

연결 단순 무향 그래프 GG가 주어지면 모든 간선 ee의 H(e)H(e)를 구해 그 총합을 출력한다.

입력

첫째 줄에 그래프의 정점 수 nn과 간선 수 mm이 양의 정수로 주어진다. n≤100n \le 100이고 m≤500m \le 500이다. 정점에는 1번부터 nn번까지 번호가 붙어 있다.

다음 mm개 줄에는 각각 양의 정수 uu, vv, ww가 주어지며, 정점 uu와 정점 vv를 잇는 가중치 ww인 간선을 뜻한다. 가중치는 1 이상 500 이하의 정수다.

주어지는 그래프는 연결되어 있고, 자기 자신을 잇는 간선은 없으며, 같은 정점 쌍을 잇는 간선이 둘 이상 있는 경우도 없다.

출력

첫째 줄에 모든 간선 ee에 대한 H(e)H(e)의 합 SS를 출력한다.

예제2

  1. 예제 1

    입력
    3 3
    1 2 1
    3 1 2
    3 2 3
    
    예상 출력
    1
    
  2. 예제 2

    입력
    7 9
    1 2 8
    1 3 3
    2 3 6
    4 2 7
    4 5 1
    5 6 9
    6 7 3
    7 4 2
    4 6 2
    
    예상 출력
    3