일방통행 도로

무방향 그래프의 모든 간선에 방향을 정해 어떤 정점으로 들어오는 간선 수의 최댓값을 최소로 만든다.

보통7그래프그리디아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

비아 나라의 도시는 양방향으로 다닐 수 있는 도로로 이어져 있다. 차선이 나뉘어 있지 않아 사고가 잦다. 운전자가 운전 중에 스마트폰을 보다가 맞은편에서 오는 차와 부딪히는 일이 반복된다. 그래서 비아의 정치인은 모든 도로를 일방통행으로 바꾸기로 했다. 기존 도로마다 두 방향 중 한 방향을 골라, 그 방향으로만 다닐 수 있게 만드는 것이다.

시장들은 자기 도시로 들어오는 일방통행 도로가 너무 많아지는 것을 원하지 않는다. 도시 안에서 정체가 생기기 때문이다. 모든 도시에 대해 그 도시로 들어오는 일방통행 도로의 수가 dd 이하가 되는 방향 배정이 존재하는, 가장 작은 정수 dd를 구하라.

입력

첫째 줄에 도시의 수 nn (1n5001 \le n \le 500)이 주어진다. 도시에는 1번부터 nn번까지 번호가 붙어 있다.

둘째 줄에 양방향 도로의 수 mm (0m25000 \le m \le 2500)이 주어진다.

다음 mm개 줄에 도로가 한 개씩 주어진다. 각 줄에는 두 정수 aabb (1a,bn1 \le a, b \le n, aba \ne b)가 주어지며, 도시 aa와 도시 bb를 잇는 도로가 있다는 뜻이다.

두 도시를 잇는 도로는 많아야 한 개다.

출력

최소 dd를 한 줄에 출력한다.