Free Edges

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

요약
무방향 그래프가 주어질 때, 흰 간선이 하나만 나오는 정점에서 그 간선을 검게 칠하는 과정을 반복해 모든 간선이 검게 되도록 처음에 검게 칠할 간선 수의 최솟값을 구한다.
난이도

어려움10점 중 8점

유형
그래프, DFS, 그리디, 트리
정답자
아직 제출이 없습니다

문제

무방향 그래프가 있다. 처음에는 모든 간선이 흰색이다. 여러분은 몇몇 간선을 골라 검은색으로 칠할 수 있다.

그다음, 어떤 정점에서 흰색 간선이 정확히 하나만 나오는 동안, 그 흰색 간선도 검은색이 된다.

목표는 과정이 끝난 뒤 모든 간선이 검은색이 되도록, 검은색으로 칠해야 하는 간선의 수를 최소로 하는 것이다.

입력

첫째 줄에 정점의 수 nn과 간선의 수 mm이 주어진다 (1≤n,m≤1051 \le n, m \le 10^5).

다음 mm개의 줄에는 그래프의 간선이 주어진다. 각 줄에는 두 정수 aia_i와 bib_i가 주어지며, 정점 aia_i와 bib_i를 잇는 간선을 나타낸다 (1≤ai,bi≤n1 \le a_i, b_i \le n, ai≠bia_i \ne b_i).

중복 간선은 없다.

출력

과정이 끝난 뒤 모든 간선이 검은색이 되도록 검은색으로 칠해야 하는 간선 수의 최솟값을 정수 하나로 출력한다.

예제1

  1. 예제 1

    입력
    5 3
    3 5
    5 1
    1 3
    
    예상 출력
    1