효율적인 해킹
면접 대비시간 제한5초메모리 제한256 MB
컴퓨터 N개와 신뢰 관계가 주어질 때, 처음 해킹했을 때 가장 많은 컴퓨터를 해킹할 수 있는 컴퓨터 번호를 모두 출력합니다.
문제
어떤 회사에는 N개의 컴퓨터와 컴퓨터 사이의 신뢰 관계가 있다. 컴퓨터 A가 컴퓨터 B를 신뢰한다면, B를 해킹했을 때 A도 해킹할 수 있다.
처음에 컴퓨터 하나를 골라 해킹할 수 있다. 그 한 번의 시작으로 해킹할 수 있는 컴퓨터 수가 가장 많아지는 모든 시작 컴퓨터 번호를 출력하는 프로그램을 작성하라.
입력
첫째 줄에 N과 M이 주어진다. N은 10,000 이하의 자연수이고, M은 100,000 이하의 자연수이다.
다음 M개의 줄에는 신뢰 관계가 A B 형식으로 주어진다. 이는 컴퓨터 A가 컴퓨터 B를 신뢰한다는 뜻이다. 컴퓨터에는 1번부터 N번까지 번호가 붙어 있다.
출력
해킹할 수 있는 컴퓨터 수가 최대가 되는 시작 컴퓨터 번호를 오름차순으로 모두 출력한다.