랠리

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

바이트버그에서 해마다 열리는 자전거 랠리가 곧 시작된다. 바이트버그의 자전거 선수는 장거리 주행에 능하다. 오랫동안 자전거 선수와 반목해 온 이 도시의 오토바이 동호회는 대회를 방해하기로 했다.

바이트버그에는 교차로가 nn개 있고, 교차로는 일방통행 도로로 이어져 있다. 이 도로망에는 순환이 없다. 즉 교차로 uu에서 교차로 vv로 갈 수 있다면 vv에서 uu로는 결코 갈 수 없다.

랠리 경로는 바이트버그의 도로를 따라 이어진다. 오토바이 동호회는 대회 당일 새벽에 교차로 하나를 골라 완전히 봉쇄할 계획이다. 그러면 자전거 협회가 경로를 다시 정하겠지만, 새 경로가 짧아져서 선수가 지구력을 뽐내지 못할 수도 있다. 오토바이 동호회의 목적이 바로 이것이다. 봉쇄한 교차로를 지나지 않는 가장 긴 경로가 최대한 짧아지도록 교차로 하나를 고른다.

경로는 도로의 방향을 따라 이동하는 서로 다른 교차로의 나열이고, 경로의 길이는 지나는 도로의 개수다. 교차로 하나에 머무르며 도로를 하나도 지나지 않는 경로의 길이는 00이다.

입력

첫째 줄에 교차로의 개수 nn과 도로의 개수 mm이 공백 하나를 사이에 두고 주어진다 (2n5000002 \le n \le 500\,000, 1m10000001 \le m \le 1\,000\,000). 교차로에는 11번부터 nn번까지 번호가 붙어 있다.

다음 mm개 줄에 도로망이 주어진다. 그중 ii번째 줄에는 두 정수 aia_ibib_i가 공백 하나를 사이에 두고 주어지며 (1ai,bin1 \le a_i, b_i \le n, aibia_i \ne b_i), aia_i번 교차로에서 bib_i번 교차로로 가는 일방통행 도로가 있다는 뜻이다. 도로망에는 순환이 없다.

출력

첫째 줄에 두 정수를 공백 하나를 사이에 두고 출력한다. 첫 번째 정수는 봉쇄할 교차로의 번호이고, 두 번째 정수는 그 교차로를 봉쇄한 뒤 자전거 선수가 지날 수 있는 도로의 최대 개수다.

봉쇄한 뒤의 최댓값이 가장 작아지는 교차로가 여럿이면 그중 번호가 가장 작은 교차로를 출력한다.