Факториал какого максимального числа можно сохранить? При хранении факториала некоторого натурального числа в k > 37 двоичных разрядах три старших бита были равны нулю, но факториал уже следующего числа сохранить в тех же k разрядах было невозможно. Позже было решено хранить в этих разрядах только значащие двоичные цифры факториала – без хвостовых нулей. Факториал какого максимального числа можно сохранить теперь. В случае, если правильных ответов несколько, то запишите ответ для минимально возможного значения k.

31 Янв 2020 в 19:48
206 +1
0
Ответы
1

Для такого решения нам нужно найти такое наименьшее k, что количество бит в двоичной записи факториала n больше k.

Мы знаем, что для n=37 количество двоичных разрядов в факториале больше k, а для n=38 такое число не больше k.

Рассмотрим n=38. Факториал 38! равен 523022617466601111760007224100074291200000000. В двоичной записи это число занимает 128 бит, а значит k=128.

Теперь рассмотрим n=39. Факториал 39! равен 20397882081197443358640281739902897356800000000. В двоичной записи это число занимает 130 бит, что больше k=128.

Следовательно, факториал 38! можно хранить в 128 двоичных разрядах, а факториал 39! уже нет. Таким образом, максимальное число, факториал которого можно сохранить в к битах (включая только значащие цифры), равно 38.

18 Апр 2024 в 18:22
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир