Ожидаемое пособие
Хидэюки получает от своего отца Удзисато несколько купюр по 1000 йен каждый месяц в качестве карманных денег. В первый день каждого месяца количество купюр определяется следующим образом. Удзисато подготавливает ( n ) ( m )-гранных кубиков и объявляет сокращение ( k ). Хидэюки бросает эти кубики. Количество выданных купюр равно сумме очков на выпавших кубиках, уменьшенной на сокращение. К счастью для Хидэюки, Удзисато обещает дать ему хотя бы одну купюру, даже если сумма очков не превышает сокращение. Каждая грань кубика имеет очки от 1 до ( m ) включительно, и вероятность выпадения каждой грани одинакова.
Вам нужно написать программу, которая вычисляет ожидаемое количество выданных купюр.
Например, когда ( n = 2 ), ( m = 6 ) и ( k = 3 ), вероятности того, что количество купюр будет 1, 2, 3, 4, 5, 6, 7, 8 и 9, равны и соответственно.
Следовательно, ожидаемое значение равно
что примерно равно 4.11111111.
Входные данные
Входные данные представляют собой последовательность строк, каждая из которых содержит три целых числа ( n ), ( m ) и ( k ) в этом порядке. Они удовлетворяют следующим условиям:
( 1 n )
( 2 m )
( 0 k < nm )
( nm m^n < 100000000 ) (( 10^8 ))
Конец ввода обозначается строкой, содержащей три нуля.
Выходные данные
Выходные данные должны состоять из строк, каждая из которых содержит одну десятичную дробь. Это ожидаемое количество купюр, и ошибка может быть меньше ( 10^-7 ). Никакие другие символы не должны присутствовать в выводе.