Справочная информация:
Дано n
мячей, таких что:
'a' balls are of colour GREEN
'b' balls are of colour BLUE
'c' balls are of colour RED
...
(конечно a + b + c + ... = n
)
Число перестановок, в которых могут быть расположены эти шары, определяется следующим образом:
perm = n! / (a! b! c! ..)
Вопрос 1:
Как я могу «элегантно» вычислить perm
, чтобы избежать целочисленного переполнения как можно дольше , и быть уверенным, что когда я закончу вычисление, у меня либо будет правильное значение perm
, или я знаю , что конечный результат будет переполнен?
В принципе, я хочу избежать использования чего-то вроде GNU GMP.
Необязательно, Вопрос 2: Является ли это действительно плохой идеей, и я должен просто пойти дальше и использовать GMP?