만드는 중입니다

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

안전한 건설 계획

시간 제한2초메모리 제한1024 MB

요약
기둥 N개와 기존 보 M개가 주어질 때, 모든 기둥 쌍을 보로 잇는 데 드는 최소 비용을 구합니다.
난이도

보통10점 중 4점

유형
그래프, 유니온 파인드
정답자
아직 제출이 없습니다

문제

숭실대학교는 새로운 고층 건물을 설계하고 있다.

지금까지 쌓아 올린 건물의 골조는 수직으로 세운 NN개의 기둥과, 서로 다른 두 기둥을 수평으로 잇는 MM개의 빔으로 이루어져 있다. 평면도에서 기둥은 점으로, 빔은 두 점을 잇는 선분으로 나타낸다. 기둥은 1번부터 NN번까지, 빔은 1번부터 MM번까지 번호가 붙어 있다.

건물의 안정성을 높이려고 보강 작업을 여러 차례 진행한다. 목표는 서로 다른 모든 두 기둥을 빔으로 잇는 것이며, 빔은 모두 합해 N(N−1)/2N(N-1)/2개가 된다. 기둥이 5개라면 평면도는 아래 그림과 같아야 한다.

구조물의 하중을 버티려면 보강 작업을 삼각형을 쌓는 방식으로 해야 한다. 작업 한 번에는 서로 다른 세 기둥 a,b,ca, b, c를 골라 (a,b)(a,b), (b,c)(b,c), (c,a)(c,a) 세 쌍을 모두 빔으로 잇고, 삼각형을 한 번에 만든다. 이때 세 기둥 사이에 이미 있던 빔의 개수에 따라 비용이 달라진다.

  • 세 기둥 사이에 빔이 하나도 없으면 위험도가 높아서 진행할 수 없다.
  • 빔이 1개 있으면 빔 2개가 추가되어 삼각형이 만들어진다. 주의가 필요한 작업이므로 비용은 1이다.
  • 빔이 2개 있으면 빔 1개가 추가되어 삼각형이 만들어진다. 비교적 안전하므로 비용은 0이다.
  • 빔이 3개 모두 있으면 이미 삼각형이 구성되어 있으므로 아무것도 하지 않는다.

보강 작업을 0회 이상 원하는 만큼 진행해서 모든 기둥 사이에 빔이 존재하도록 할 때, 최소 비용을 구하라. 모든 입력에 대해 서로 다른 두 기둥을 잇는 빔이 항상 존재하도록 보강 작업을 진행할 수 있음이 보장된다.

예를 들어 골조의 평면도가 위 그림과 같고, 왼쪽 위의 점부터 시계 방향으로 1, 2, 3, 4번 기둥이라고 하자.

첫 번째 보강 작업에서 1, 2, 3번 기둥으로 삼각형을 만들고, 두 번째 보강 작업에서 1, 2, 4번 기둥으로 삼각형을 만들면 총비용은 1+1=2이다.

반면 첫 번째 보강 작업에서 1, 2, 3번 기둥, 두 번째에서 2, 3, 4번 기둥, 세 번째에서 1, 2, 4번 기둥을 고르면 총비용은 1+0+0=1이다.

이 밖에도 여러 방법이 있지만 비용을 1보다 적게 쓰는 방법은 없으므로 답은 1이다.

입력

첫째 줄에 기둥의 개수 NN과 빔의 개수 MM이 공백으로 구분되어 주어진다.

둘째 줄부터 M+1M+1번째 줄까지, i+1i+1번째 줄에 ii번째 빔이 연결하는 두 기둥의 번호 aia_i, bib_i가 공백으로 구분되어 주어진다.

출력

보강 작업을 최적으로 진행할 때, 서로 다른 모든 기둥을 빔으로 잇도록 만드는 최소 비용을 출력한다.

제한

  • 3≤N≤403 \le N \le 40
  • 1≤M≤N(N−1)/21 \le M \le N(N-1)/2
  • 1≤ai<bi≤N1 \le a_i < b_i \le N (1≤i≤M1 \le i \le M)
  • i≠ji \ne j이면 (ai,bi)≠(aj,bj)(a_i,b_i) \ne (a_j,b_j)이다. (1≤i,j≤M1 \le i,j \le M) 즉, 같은 두 기둥을 잇는 빔이 여러 개 존재하지 않는다.
  • 서로 다른 두 기둥을 잇는 빔이 항상 존재하도록 보강 작업을 진행할 수 있음이 보장된다.
  • 입력으로 주어지는 수는 모두 정수이다.

예제3

  1. 예제 1

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

    입력
    4 6
    1 2
    1 3
    1 4
    2 3
    2 4
    3 4
    
    예상 출력
    0
    
  3. 예제 3

    입력
    4 3
    1 2
    2 3
    3 4
    
    예상 출력
    0