경품 추첨 속이기
시간 제한2초메모리 제한512 MB
n장의 응모권이 든 상자에 자신의 이름이 적힌 k장을 더 넣어, p장을 뽑을 때 자신의 이름이 정확히 한 번 나올 확률이 최대가 되도록 한다.
문제
경품 추첨이 열린다. 상품은 개이고, 참가하려면 자기 이름을 적은 종이를 추첨함에 넣으면 된다. 당첨자는 함에서 종이를 장 뽑아 정한다. 뽑힌 종이는 함에 다시 넣지 않으므로 한 사람이 받는 상품은 최대 한 개다.
이름을 두 장 이상 넣는 것은 규칙 위반이다. 그러나 주최 측은 함에 든 이름을 일일이 확인하지 않으므로, 자기 이름이 두 개 이상의 상품에 뽑혀야만 부정이 드러난다. 그래서 이름을 여러 번 넣으면 상품을 받을 확률이 오히려 올라가기도 한다.
다른 사람이 넣은 종이는 장이다. 여기에 자기 이름을 적은 종이를 장 넣는다고 하자 (). 그러면 함에 든 종이는 장이고, 그중 장을 같은 확률로 무작위로 뽑는다. 를 잘 골라서 자기 이름이 정확히 한 번 뽑힐 확률을 최대로 만들어라.
입력
첫째 줄에 정수 과 가 공백으로 구분되어 주어진다 (). 은 자기 것을 뺀 함 속 종이 수, 는 나눠 주는 상품 수다.
출력
상품을 받을 확률의 최댓값을 소수점 아래 정확히 아홉 자리까지 반올림해 한 줄에 출력한다. 자릿수가 모자라면 0으로 채운다. 예를 들어 확률이 이면 0.600000000을 출력한다.