네트워크
시간 제한1초메모리 제한256 MB
우선순위가 매겨진 N개의 시스템과 M개의 간선이 주어질 때, A→B와 B→C를 A→C로 합치는 연산을 반복한 뒤 남는 간선의 수를 구한다.
문제
회사에 개의 네트워크 시스템 과 이들을 연결하는 개의 네트워크 이 있다. 시스템에는 우선순위가 있어서 모든 네트워크는 우선순위가 높은 시스템에서 낮은 시스템으로만 전달된다. 즉 에서 로 전달되는 네트워크가 있다면 이다.
최근 네트워크가 너무 난잡해져서 정리하기로 했다. 세 시스템 , , 에 대해 에서 로 전달되는 네트워크와 에서 로 전달되는 네트워크가 있으면, 이 두 네트워크를 합쳐 에서 로 전달되는 네트워크 하나로 간략화한다. 이때 원래의 두 네트워크는 사라지고 새 네트워크 하나가 생긴다. 같은 두 시스템을 연결하는 네트워크가 여러 개 있어도 각각 별개의 네트워크로 센다.
이 간략화를 반복해서 네트워크의 수를 최대한 줄이려고 한다. 남은 네트워크의 수를 구하여라.
입력
첫째 줄에 과 이 주어진다. ()
다음 개의 줄 중 번째 줄에 두 정수 , 가 주어진다. 이는 가 에서 로 전달되는 네트워크임을 뜻한다. (, )
출력
최대한 간략화했을 때 남은 네트워크의 수를 출력한다.