|
|
|
|
|
|
|
Вернуться
| 1 Неизвестный, 31 июля 2018 г. 14:10:38 | |
|
Объяснение очень понятное спасибо большое :)
|
|
|
| 2 Тер-Саркисов Богдан Олегович, 30 июля 2018 г. 17:55:33 | |
Это разные подходы к вычислению выражения a**b mod m. 1) Если делать просто a**b%m, то выражение будет вычисляться так: сначала a**b, а потом от результата возьмется остаток от деления на m. Объем памяти для хранения числа a**b можешь сам посчитать: количество десятичных знаков равно [b*log10(a)], а количество битов для хранения такого числа равно [b*log2(a)]. По времени тоже достаточно долго будет считать на больших тестах, несмотря на хорошо реализованную целочисленную арифметику. 2) pow(a, b, m) предположительно использует быстрое возведение в степень по модулю. Оно работает за O(log(b)), а промежуточные числа, получаемые при вычислении результата, меньше m**2. Поэтому лучше использовать pow(a, b, m), чем a**b%m.
|
|
|
| 3 Неизвестный, 29 июля 2018 г. 16:04:56 | |
|
ну я и про ето и спрашываю,на сколько же лутче
|
|
|
| 4 Демиденко Виталий, 29 июля 2018 г. 14:52:56 | |
|
там ещё есть pow(a,b,mod) это лучше, чем pow(a,b)%mod
|
|
|
Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!
| | | |