주사위 베팅

s면체 주사위를 n번 던질 때 서로 다른 값이 k개 이상 나올 확률을 구해 소수점 아홉 자리까지 출력한다.

보통6확률동적 계획법조합론수학아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

군나르와 친구들은 주사위를 굴리는 놀이를 좋아한다. 군나르에게는 6면, 12면, 20면 주사위가 아주 많다. 하던 놀이가 모두 지겨워지자 군나르는 새로운 놀이를 만들었다. ss면 주사위를 nn번 굴려서 서로 다른 숫자가 kk가지 이상 나오면 이긴다. ss면 주사위의 각 면에는 11부터 ss까지의 숫자가 서로 겹치지 않게 하나씩 적혀 있다.

이 놀이는 혼자 하는 놀이라서, 군나르와 친구들은 다른 사람이 한 판에 베팅하도록 해서 재미를 더하기로 했다. 베팅하기 전에 당신은 ss면 주사위를 nn번 굴려서 서로 다른 숫자가 kk가지 이상 나올 확률을 알고 싶다. 한 번 굴릴 때 각 숫자가 나올 확률은 모두 같다.

입력

한 줄에 정수 nn, ss, kk가 이 순서대로 공백으로 구분되어 주어진다 (1n100001 \le n \le 10\,000, 1ks5001 \le k \le s \le 500). nn은 주사위를 굴리는 횟수, ss는 주사위의 면 수, kk는 이기는 데 필요한 서로 다른 숫자의 가짓수이다.

출력

ss면 주사위를 nn번 굴려서 서로 다른 숫자가 kk가지 이상 나올 확률을 한 줄에 출력한다. 소수점 아래 아홉째 자리에서 반올림하되, 뒤에 0을 채워 소수점 아래 자릿수가 정확히 9가 되도록 적는다. 예를 들어 확률이 11이면 1.000000000을, 00이면 0.000000000을 출력한다.