영국식 레스토랑
시간 제한2초메모리 제한512 MB
n개의 테이블과 1부터 g까지 균등 분포를 따르는 시간당 손님 그룹이 주어질 때, 각 그룹이 들어갈 수 있는 가장 작은 테이블에 앉는다면 t시간 후 식당에 앉아 있는 사람 수의 기댓값을 구한다.
문제
로빈은 스위스 알프스에 살 곳을 구하고 이제 행복할 일만 남았다고 생각했다. 그런데 아침마다 무언가 빠진 기분으로 눈을 떴다. 이 동네에는 영국 음식을 하는 곳이 없어서 그런 것이 아닐까. 로빈은 여기서 사업 기회를 보았고 자기 문제도 함께 풀 수 있겠다고 생각해, 영국인 요리사 짐과 손을 잡고 근처에 레스토랑을 열었다. 주방은 짐에게 맡기면 되지만, 스위스 알프스에 영국식 레스토랑을 여는 것이 좋은 선택인지는 확신이 서지 않는다.
로빈은 이 동네 사람이라 손님의 습관을 잘 안다. 매시 정각마다 손님 한 무리가 정확히 하나 도착한다. 인원은 명 이상 명 이하에서 균일하게 무작위로 정해지며, 다른 무리와 독립이다. 무리는 완전히 비어 있는 테이블 가운데 전원이 앉을 수 있는 것 중에서 정원이 가장 작은 테이블에 앉는다. 그런 테이블이 없으면 크게 실망하고 돌아간다. 한 번 앉은 무리는 폐점할 때까지 자리를 뜨지 않는다. 짐이 손님을 지루하지 않게 하기 때문이다.
예를 들어 정원이 , , 인 테이블 개가 있고 인원이 , , 인 무리가 이 순서로 왔다고 하자. 첫 무리는 정원 인 테이블에 앉고, 둘째 무리는 돌아가고, 셋째 무리는 정원 인 테이블에 앉는다. 그래서 마지막에 가게 안에는 명이 있다.
로빈은 레스토랑을 시간 동안 연다. 레스토랑 업계에서 가장 중요한 지표는 문을 닫는 순간 가게 안에 있는 사람 수의 기댓값이다. 이 값을 구하라.
입력
첫째 줄에 정수 , , 가 주어진다 (, , ). 각각 테이블의 수, 한 무리의 최대 인원, 영업 시간이다.
둘째 줄에 테이블의 정원 이 주어진다 ().
출력
문을 닫는 순간 가게 안에 있는 사람 수의 기댓값을 소수점 아래 여섯 자리까지 출력한다.