Входной файл: input.txt Выходной файл: output.txt Время на тест: 1 секунда Ограничение на память: 16 MB Автор задачи: Метельский И.С. Авторское решение:Pascal Тесты к задаче:Скачать
Недавно появившаяся фирма "VasEk" занимается разработкой продвинутого программного обеспечения и пока состоит из одного программиста (судя по названию фирмы, его зовут Василий, а Васек - его nickname, но автор задачи может и ошибаться). Первый заказ, который получила фирма "VasEk", выглядел устрашающе. Заказчиком было казино "Lavr". Дирекция казино хотела знать, выгодна ли очередная игра, которую казино хотело предложить своим клиентам. Игрок должен подбросить монету N раз, и, если орел выпадет ровно M раз, то игрок выигрывает 1000000 долларов, в противном случае игрок платит казино 1 доллар. В процессе выполнения заказа, программисты из "VasEk" столкнулись с задачей вычисления и хранения в памяти числа, равного количеству битовых последовательностей длины N, состоящих из ровно M единиц и N-M нулей (каждая такая битовая последовательность соответствует какому-нибудь выигрышному варианту, если считать, что 1 - орел, а 0 - решка) - далее это число обозначается C. Они с честью справились с этой задачей, решив ее следующим образом:
1) C=N!/(M!*(N-M)!), где a!=1*2*...*a - факториал числа a (0!=1);
2)Число C будет храниться в виде C=A*(K^B), где B берется максимально возможным, но так, чтобы A было целым, а K - основание системы счисления, в которой будут проводиться вычисление. Например, если N=6, M=3, K=10, то С=6!/(3!*3!)=720/(6*6)=20 и С=2*(10^1), то есть A=2 и B=1.
Небольшая загвоздка заключалась в том, что непонятно было, как вычислить B.Для решения этой проблемы программисты из "VasEk" пригласили Вас.
Задание.
По введенным числам N,M,K вычислите значение B. Значение C вычислять не нужно.
Ввод.
Первая и единственная строка входного файла содержит три числа, разделенные одиночными пробелами: N, M, K.