A 지지자 N명과 B 지지자 M명이 무작위 순서로 도착할 때, 매 투표 직후 A가 앞서 있을 확률을 구한다.
보통5조합론확률수학동적 계획법아직 제출이 없습니다시간 제한5초메모리 제한512 MB어떤 선거에 후보 A와 B 두 명만 나섰다. 여론 조사 결과로 A를 지지하는 유권자가 정확히 N명, B를 지지하는 유권자가 정확히 M명이라는 사실을 이미 알고 있다. N이 M보다 크므로 A가 이긴다.
유권자는 한 명씩 차례로 투표소에 온다. 오는 순서는 가능한 (N+M)!가지 순서 중에서 균등한 확률로 정해진다. 한 명이 투표할 때마다 개표원이 중간 집계를 갱신하고 지금까지 어느 후보가 앞서는지 적어 둔다. 두 후보의 득표수가 같으면 앞서는 후보는 없다고 본다.
A가 처음부터 끝까지 계속 앞설 확률, 즉 매 투표 직후마다 빠짐없이 A가 앞서 있을 확률을 구하라.
첫 줄에 테스트 케이스의 수 T가 주어진다. 이어서 테스트 케이스마다 한 줄에 두 정수 N과 M이 주어진다. N은 A를 지지하는 유권자 수, M은 B를 지지하는 유권자 수다.
테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. x는 1부터 시작하는 테스트 케이스 번호이고, y는 매 투표 직후마다 A가 앞서 있을 확률이다.
y는 소수점 아래 자리를 정확히 여덟 개 써서 출력한다. 정확한 값이 소수점 아래 여덟째 자리까지 딱 떨어지지 않으면 여덟째 자리에서 반올림하고, 남은 부분이 정확히 한가운데에 놓이면 큰 쪽으로 올린다. 예를 들어 확률이 1/512=0.001953125이면 0.00195313을 출력한다.
N=2, M=1인 경우를 보자. 유권자는 셋이고 그중 둘이 A를 지지한다. 이 둘을 A1, A2라고 하면 투표 순서는 A1 A2 B, A2 A1 B, A1 B A2, A2 B A1, B A1 A2, B A2 A1의 여섯 가지다. 이 가운데 매 투표 직후마다 A가 앞서는 순서는 앞의 두 가지뿐이다. 순서가 A1 B A2이면 첫 투표 뒤에는 A가 앞서지만 두 번째 투표 뒤에는 동점이 된다. 따라서 답은 2/6=0.33333333이다.
N=1, M=0인 경우에는 유권자가 한 명뿐이고 그 유권자가 A를 지지한다. 가능한 순서는 하나뿐이며, 그 한 번의 투표 뒤에 A가 앞선다.