beldmit: (Программизм)
[personal profile] beldmit
Помните задачку, встреченную мной впервые у Перельмана - про самое большое число, записываемое тремя девятками, 999?

Если подумать, то представление этого числа как строки - это всего-то 300 Мб. Наверняка его получится вычислить на современных компьютерах "в лоб" за разумное время. Осталось понять, какие языки поддерживают соответствующие типы данных.

Date: 2009-10-18 06:20 pm (UTC)
ext_613079: Default userpic (Default)
From: [identity profile] shaplov.livejournal.com
Ммм... а умножить строку на строку в столбик?

Date: 2009-10-18 06:23 pm (UTC)
From: [identity profile] beldmit.livejournal.com
Алгоритм придется реализовывать :-)

Date: 2009-10-18 06:53 pm (UTC)
ext_613079: Default userpic (Default)
From: [identity profile] shaplov.livejournal.com
Ну... если его осваивают в начальной школе, то реализовать его на языке программирования должно быть не сложно...

Оптимальности нам ведь не особо нужно, нам только одно число посчитать...

Date: 2009-10-18 07:18 pm (UTC)
From: [identity profile] beldmit.livejournal.com
Коля, окстись! Грубая оценка числа операций - ln 387420489.

Date: 2009-10-18 07:57 pm (UTC)
From: [identity profile] yakov-sirotkin.livejournal.com
И чему же равно это страшное число?

В Java, конечно есть BigInteger, неплохой тест для него. Но реализовать быстрое умножение самому - это абсолютно не проблема.

Date: 2009-10-19 02:35 am (UTC)
spamsink: (Default)
From: [personal profile] spamsink
Как писал Уэзерелл, алгоритм быстрого умножения можно позаимствовать у кроликов.

Profile

beldmit: (Default)
Dmitry Belyavskiy

December 2025

S M T W T F S
 123456
78910111213
14151617181920
2122 2324252627
28 29 3031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 7th, 2026 01:55 am
Powered by Dreamwidth Studios