축구
면접 대비시간 제한2초메모리 제한128 MB
패스·탈취·슈팅이 확률적으로 일어나는 축구 경기에서 T초 동안의 최종 점수 분포를 계산하는 문제.
문제
명의 선수가 두 팀으로 나뉘어 축구를 한다. 각 팀의 선수는 자기 팀 유니폼을 입으며, 등번호는 번부터 번까지이다.
각 선수는 자신의 슛 정확도 를 알고 있으며, 패스할 수 있는 같은 팀 동료의 집합 와 자신에게서 공을 빼앗을 수 있는 상대 팀 선수의 집합 를 알고 있다.
어떤 선수가 공을 가지면, 그 순간부터 초 동안 다음 세 가지 사건 중 정확히 하나가 일어난다.
- 집합 에 속한 동료 중 한 명에게 패스한다.
- 집합 에 속한 상대 팀 선수 중 한 명에게 공을 빼앗긴다.
- 골대를 향해 슛을 쏜다.
선수가 슛을 쏘면 자신의 정확도 와 같은 확률로 득점한다. 슛을 쏜 뒤에는 득점 여부와 관계없이 상대 팀의 번 선수가 공을 갖는다.
위 세 사건이 일어날 확률의 비는 이며, 이전에 일어난 사건은 이후 사건에 영향을 주지 않는다. (여기서 는 집합 의 크기이다.) 패스와 빼앗김에서 각 집합에 속한 선수가 선택될 확률은 모두 같다. 선수가 공을 가지고 있지 않은 시간은 무시할 수 있을 만큼 짧다.
경기는 첫 번째 팀의 번 선수가 공을 가진 상태로 시작한다. 어느 한 팀이 골을 넣거나 경기 시작 후 초가 지나면 경기가 끝난다. 가능한 모든 최종 스코어에 대해, 경기가 그 스코어로 끝날 확률을 구하시오.
아래 그림은 입력 예시 하나를 그림으로 나타낸 것이다.

입력
첫째 줄에 , , 가 주어진다. (, , )
이어서 개의 줄에 첫 번째 팀 선수들의 정보가 번부터 순서대로 주어지고, 그다음 개의 줄에 두 번째 팀 선수들의 정보가 번부터 순서대로 주어진다.
각 선수의 정보는 그 선수의 정확도 로 시작한다. () 이어서 집합 의 크기 와 집합 의 크기 가 주어진다. (, ) 그 뒤에 개의 정수가 공백으로 구분되어 주어지는데, 앞의 개는 집합 에 속한 같은 팀 선수의 등번호이고, 뒤의 개는 집합 에 속한 상대 팀 선수의 등번호이다. 집합 에는 자기 자신의 등번호가 포함되지 않는다.
출력
이론상 가능한 최종 스코어는 정확히 개이다. 각 스코어에 대해, 경기가 그 스코어로 끝날 확률을 기약분수 분자/분모 형태로 한 줄에 하나씩 출력한다. 확률이 이면 0/1, 이면 1/1로 출력한다.
출력 순서는 첫 번째 팀의 점수가 작은 것부터이며, 점수가 같으면 두 번째 팀의 점수가 작은 것부터이다.