승진

승격 인원이 A명과 B명일 때 모든 가능한 승격 집합에 포함되는 직원 수와 B명으로도 승격할 수 없는 직원 수를 구합니다.

보통7위상 정렬그래프아직 제출이 없습니다시간 제한2초메모리 제한256 MB

문제

공정 주식회사 경영진은 우수 사원을 승진시키기로 하고, 승진자 수를 구간 [A,B][A, B] 안으로 제한했다. 임원진이 사원의 실적을 비교한 결과 사원 사이에 모순 없는 우열 관계가 나왔고, 승진은 이 관계를 지켜야 한다. 즉 사원 xx가 사원 yy보다 나은 실적을 냈다면, xx가 승진할 때에만 yy도 승진할 수 있다.

지금까지 모은 자료가 공정성을 보장하기에 충분한지 알아보려고 회장은 다음 두 가지를 묻는다.

  • 구간의 양 끝점에서, 곧 승진자가 AA명일 때와 BB명일 때 반드시 승진하는 사원은 몇 명인가.
  • 승진자가 BB명이어도 승진할 가능성이 전혀 없는 사원은 몇 명인가.

그림의 예를 보자. 사원은 일곱 명이고 우열 규칙은 여덟 개다. 사원 xx에서 사원 yy로 가는 화살표는 xxyy보다 나은 실적을 냈다는 뜻이다. 승진자 수는 구간 [3,4][3, 4]로 제한되어 있다.

  • 승진자가 세 명이면 승진자 집합은 Anne, Bob, Greg이거나 Anne, Eve, Greg이다. 그래서 두 명(Anne, Greg)은 반드시 승진한다. 지금 자료로는 Bob과 Eve가 승진할지 알 수 없다.
  • 승진자가 네 명이면 승진자 집합은 Anne, Bob, Eve, Greg 하나뿐이다. 그래서 네 명(Anne, Bob, Eve, Greg)이 반드시 승진하고, 세 명(Cora, Dan, Fred)은 승진할 가능성이 없다.

승진자 수의 구간, 사원 집합, 사원 사이의 우열 관계가 주어질 때 구간의 양 끝점 각각에 대해 반드시 승진하는 사원 수를 구하고, 승진할 가능성이 없는 사원 수를 구하는 프로그램을 작성하시오.

우열 관계에는 모순이 없다. 사원 xx가 사원 yy보다 나은 실적을 냈다면 yy는 직접적으로든 간접적으로든 xx보다 나은 실적을 내지 않았다.

입력

첫째 줄에 네 정수 AA, BB, EE, PP가 공백으로 구분되어 주어진다. AABB는 구간의 양 끝점, EE는 사원 수, PP는 우열 규칙의 개수다. 사원은 00부터 E1E - 1까지의 정수로 구분한다. 다음 PP개의 줄에는 서로 다른 두 정수 xxyy가 공백으로 구분되어 주어진다. 이는 사원 xx가 사원 yy보다 나은 실적을 냈다는 뜻이다.

제한

  • 1A<B<E1 \le A < B < E (구간의 양 끝점)
  • 2E50002 \le E \le 5000 (사원 수)
  • 1P200001 \le P \le 20000 (우열 규칙의 개수)

출력

세 줄을 출력한다.

첫째 줄에는 승진자가 AA명일 때 반드시 승진하는 사원 수를 출력한다. 둘째 줄에는 승진자가 BB명일 때 반드시 승진하는 사원 수를 출력한다. 셋째 줄에는 승진자가 BB명이어도 승진할 가능성이 없는 사원 수를 출력한다.