만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

미담 전하기

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

요약
방향 그래프에서 K로 가는 경로 위에 놓이는 사람이 가장 많은 시작점 X를 찾고, X와 그 사람 수를 출력합니다.
난이도

보통10점 중 6점

유형
그래프, BFS, 비트 연산
정답자
아직 제출이 없습니다

문제

인성에 문제가 없는 이상원은 평소 주변 사람에 대한 미담을 자주 한다. 사람들의 인간관계는 복잡하게 얽혀 있어, 누군가에게 어떤 사람에 대한 미담을 하면 돌고 돌아 그 대상자의 귀에 들어가게 된다.

인간관계와 미담은 다음과 같이 정의한다.

  • 인간관계는 일방적이다. 즉, A→BA \rightarrow B여도 B→AB \rightarrow A는 성립하지 않을 수 있다.
  • 인간관계 A→BA \rightarrow B가 주어졌을 때, BB는 AA와 친한 사람 중 한 명이다.
  • 각 사람은 미담을 여러 번 전해 들을 수 있다. 어떤 사람 AA가 미담을 전해 들을 때마다, AA는 친한 사람 중 한 명을 골라 미담을 건넨다.

미담은 당사자에게 전달되어야 비로소 의미가 있다. AA에게서 시작된 미담이 제3자 CC에게 전파되었을 때, CC를 거쳐서도 당사자에게 전달될 수 있다면 AA를 '직접 미담 전파자', CC를 '간접 미담 전파자'라고 한다. '미담 당사자'를 거쳐서도 '간접 미담 전파자'가 생길 수 있고, '미담 당사자'도 '간접 미담 전파자'가 될 수 있다. '직접 미담 전파자'는 '간접 미담 전파자'가 될 수 없다.

위와 같은 관계가 주어졌을 때 '미담 당사자'가 3번, '직접 미담 전파자'가 1번이라면, '간접 미담 전파자'는 {2}로 1명이다.

상원이는 '미담 당사자' KK에 관한 미담을 전파하고 싶다. 그러나 여러 사람에게 말하고 싶지는 않아서, '직접 미담 전파자' 한 명에게만 전하려고 한다. '직접 미담 전파자' XX (X≠KX \neq K)를 정해 미담을 전파했을 때, '간접 미담 전파자'는 최대 몇 명이나 생길 수 있을까?

입력

첫 번째 줄에 NN (1≤N≤10,0001 \le N \le 10,000)과 MM (0≤M≤100,0000 \le M \le 100,000)이 주어진다. 각각 사람의 수와 인간관계의 수를 나타낸다.

두 번째 줄부터 M+1M+1번째 줄까지 MM개의 줄에 인간관계 정보가 주어진다. 각 줄에는 공백으로 구분된 두 정수 uu, vv (1≤u,v≤N1 \le u, v \le N, u≠vu \ne v)가 주어진다. 이는 u→vu \rightarrow v 인간관계를 의미한다. 같은 인간관계가 두 번 주어지는 경우는 없다.

마지막 줄에 정수 KK (1≤K≤N1 \le K \le N)가 주어진다. 이는 미담 당사자를 의미한다.

출력

첫 번째 줄에 문제에서 설명한 XX와, XX에 의해 생기는 '간접 미담 전파자'의 수를 공백으로 구분하여 출력한다. XX에 해당하는 값이 여러 개라면, 그중 가장 작은 정수를 출력한다. '간접 미담 전파자'가 생길 수 없다면 첫 번째 줄에 0을 출력한다.

힌트

1번 사람에게 미담을 전파하면 전파 과정은 1→2→3→1→2→4→5→6→7→8→7이 되고, 이로 인해 생기는 '간접 미담 전파자'는 {2, 3, 4, 5, 6, 7, 8}로 7명이다.

예제2

  1. 예제 1

    입력
    11 17
    1 2
    2 3
    3 1
    4 5
    5 6
    5 4
    6 5
    7 8
    8 7
    2 4
    4 7
    6 7
    10 11
    11 9
    8 9
    9 10
    2 7
    7
    
    예상 출력
    1 7
    
  2. 예제 2

    입력
    4 4
    1 2
    1 3
    2 4
    3 4
    4
    
    예상 출력
    1 1